当我试图移动我的项目树到git repo时,我仍然得到这个错误消息。

我检查了我的目录与这个项目的权限,这些设置为777。在终端的my_project目录下设置:

git init

然后如果我尝试

转到添加 。

or

Git commit -m "first upload"

我就会得到错误

fatal: Unable to create '/path/my_proj/.git/index.lock': File exists.

If no other git process is currently running, this probably means a git process crashed in this repository earlier. 
Make sure no other git process is running and remove the file manually to continue.

我也尝试创建一个新的回购,并在那里提交它,但不幸的是,仍然是相同的错误消息。

问题的原因是什么?


当前回答

您是否意外地使用根用户创建了存储库?

碰巧我是以根用户创建git存储库的。

我删除了git存储库,并在没有sudo的情况下再次创建它,它可以工作。

其他回答

运行任务管理器,找到Git for windows进程并杀死它。 删除索引。锁定文件在。git文件夹下 这对我很管用!

我也有同样的问题。我试着

rm -f ./.git/index.lock 

控制台给了我一个错误信息。然后,我尝试了

rm --force ./.git/index.lock

这很有效。

好运! 这很有效

所有的解决方案都是正确的:

Just remove .git from your corrupted repository, 

then copy this file if back from another clone (if you don't have it in another machine, just clone it).

最后,是什么改变了我:

避免使用sudo解压或复制新的。git文件夹。如果您使用超级用户权限创建。Git将无法访问。Git文件夹

重启机器对我有用。到目前为止,提供的解决方案没有一个对我有效。

环境 视窗 10 + Git Bash

编辑:我看到同样的解决方案是在这里:git索引。提交时文件存在,但无法删除

在这种情况下,无论出于什么原因,你正在从一个由云服务(dropbox, drive, onedrive等)同步的文件夹进行重基,你应该暂停或关闭同步,因为它会影响重基期间的权限。