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

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

问题的原因是什么?


当前回答

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

其他回答

需要删除索引。锁文件。

在Linux中

cd .git
rm -f index.lock

在Windows(10)中,在repo目录下的命令提示符中执行此操作:

cd .git
del index.lock

对我来说有效的解决方案是关闭sublime文本,因为运行中的git进程是由编辑器启动的。

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

我们也可以直接终止git进程。我通过git的GUI应用程序收到相同的问题,出错了,git使一些工作无限。kill进程将冻结使用git的应用程序,只需重新启动它,一切都会好起来。

我已经更改了我的目录权限,所以我知道它可能与权限相关。在我的情况下,我删除了不需要的(_www)用户,然后通过应用更改所有内容应用读/写权限给每个人。这是Mac上的