当我尝试运行任何git命令时,我得到以下内容
$ git add .
fatal: Unable to create 'J:/Project/geospatial/U5M_africa/.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.
我删除文件没有任何错误:
$ rm -f .git/index.lock
我也尝试在Windows中手动删除它。文件消失,但立即重新出现。如果我尝试任何git命令,我仍会得到同样的致命错误。
是什么导致文件立即重新出现?我怎样才能彻底摆脱它并继续我的生活?
答案 0 :(得分:2)
我不是那么优雅但有效的解决方案:
首先重命名文件,然后将其删除。出于某种原因,这有效..
答案 1 :(得分:0)
检查您的流程(使用process explorer: CTRL + F :搜索J:\Project\geospatial\U5M_africa
)
您必须在您的仓库中编写流程,并导致git创建该文件 它可以是git gui,也可以是“git index.lock File exists when I try to commit, but cannot delete the file”
中评论的任何其他过程答案 2 :(得分:0)
正如@VonC所提到的那样,"锁定"你的git项目并创建这个文件。
此文件通常在您尝试pull or push
或使用子模块时创建,并且应在操作结束后删除。
当你发现 - 手动删除它也会起作用,我假设你已经尝试过并且它一遍又一遍地被创造。
如果这个文件没有被git进程自动删除,你应该手动删除它,它会起作用。当我遇到这个问题时,这就是我所做的。
如果当前没有其他git进程正在运行,这可能意味着a git进程早先在此存储库中崩溃。
确保没有其他git 进程正在运行并手动删除文件以继续。
解决方案非常简单,只需删除.git/index.lock
文件
rm .../.git/index.lock
答案 3 :(得分:0)
实际上,如果删除锁定文件无法正常工作(每次都出现),那么它们是机器中正在运行的另一个git进程,可能是git GUI或git Extension或其他任何东西。确保关闭所有已处理的git bash。那么git命令肯定可以正常工作,而不会产生index.lock文件问题。
答案 4 :(得分:0)
我遇到了同样的问题。手动或通过命令(rm -f .git / index.lock)删除index.lock并没有帮助。当我尝试切换分支时,该文件重新出现。
我进行了重新启动(MacOS),并手动进行了删除操作,
不确定这是否是一个好的解决方案,但可能会对某人有所帮助。