当我试图移动我的项目树到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.

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

问题的原因是什么?


当前回答

当我在repo的根文件夹对应的目录的子目录中(即.git所在的目录)时,就发生了这种情况。向上移动到根目录解决了这个问题-代价是使所有文件引用更不方便,因为您必须访问path/to/folder/foo。Ext而不是foo。Ext

其他回答

如果你尝试之后:

Rm -f ./.git/index.lock

你会得到:

Rm:不能断开索引。lock':拒绝允许

尝试关闭所有可能使用Git的软件。 我打开了源代码树和Visual Studio,关闭后命令都工作了。

如果有人正在使用git svn,我有同样的问题,但不能删除文件,因为它不存在!在检查权限,触摸文件并删除它之后,我不记得还有其他什么,这是有效的:

签出主分支。 Git SVN rebase (master) 签出您正在处理的分支 Git SVN rebase

对我来说

rm -r .git-credentials.lock 

在Windows中,我只能在任务管理器中为所有Git Windows(32位)进程结束任务后删除锁文件。

解决方案(win10)

1. 结束任务管理器中所有Git Windows(32位)进程的任务

2. 删除.git/index。锁文件

尝试退出Xcode——因为它是一个git客户端,你必须退出Xcode以避免命令行上的git问题。