当我做'git commit'时,我得到以下内容:

无法创建“project_path/.git/index”。lock `:文件已存在。

然而,当我执行ls project_path/.git/index。锁定,表示文件不存在。你觉得我该怎么做?我还注意到project_path/。git由root拥有,不确定这是否与我遇到的问题有关。

Git版本为1.7.5.4

编辑:看起来问题很可能是我正在运行的另一个进程,那就是向项目目录写入(我不知道)。我重新启动了我的电脑,然后我就没有问题了。


当前回答

我创建了一个空索引。锁定文件,使用Windows命令删除

其他回答

在运行Visual Studio 2015 RC (v4.6.00057)并结合SourceTree (v1.6.14.0)的Windows平台上,也会给出此错误。

解决方案: 假设你想使用源代码树作为源代码管理器,只需在Visual Studio中禁用源代码控制提供程序,如下所示:

转到:工具>选项>源代码控制 选择“当前源控制插件”为:无

这是当你取消从中间的原点开始拉时发生的。

你可以手动删除索引。锁定文件从你的。git目录。

rm -f ./.git/index.lock

CD到您的项目目录并运行此命令。

如果你正在使用GIT BASH For Windows:-

运行以下两个命令 1. cd . 2. rm index.lock

我在windows 10中也有这个问题。

当我尝试del ./.git/index。锁,它告诉我不能删除索引。lock':设备或资源繁忙

我终于明白了原因:

计算机有两个进程使用git:

吉特巴什 CMDER

所以我使用cder .exe来git提交它会发生错误。

所以解决方案是使用git bash或终止git bash,然后使用cder .exe

通过删除你正在尝试的回购,我解决了这个问题 提交更改并从远程复制最新版本(如果 使用远程git服务器)。 如果是本地,则从目录中复制数据 并初始化一个新的git存储库。