我正在尝试学习如何使用Git,并且已经创建了一个包含一个HTML、CSS和Java脚本文件的小项目。我从基本上为空的项目中创建了一个分支,然后对代码进行了一些更改。我尝试暂存更改,但收到以下错误消息:
Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
诚然,我在尝试更早地提交我的空项目时确实遇到了问题,只是退出了Git bash,因为我不知道如何摆脱我已经取得的成就。
我有没有办法解决这个问题,或者我应该启动一个新的存储库?
30条答案
按热度按时间cotxawn716#
尝试删除
.git
目录中的index.lock
文件,如果您在工作树中,则尝试删除工作树.git/worktrees/*/index.lock
中的index.lock
文件。当您同时执行两个
git
命令时,通常会出现此类问题;其中一个命令可能来自命令提示符,另一个来自IDE。tyg4sfes17#
我在
pod update
时遇到此错误。我通过删除cocoapods
的.git
目录中的index.lock
文件解决了这个问题。这可能会对某些人有帮助。
q5iwbnjs18#
虽然上面有另一个选择,但那并没有解决我的问题。在我的例子中,我删除了./zshc中的“git”插件,然后重新启动计算机,然后问题就消失了,我猜zsh插件做了一些与原始git命令冲突的事情。
zdwk9cvp19#
可能发生的情况是,您的分支已损坏创建新分支GIT分支#检查分支。我已经创建了一个新的分支机构,并正在工作。
dced5bon20#
删除此处的
index.lock
:此外,如果您的存储库有子模块,请同时删除此处的所有
index.lock
:qjp7pelc21#
对我来说,问题更简单,这是在源代码树中,所以我不确定它将在多大程度上适用于常规解决方案,但我意外地选择了我的主分支,试图进行提交而不是我未提交的更改。
这通常不是问题,但我已经先发制人地输入了一条提交消息,这样我就可以跟踪我为我正在进行的小冲刺做了什么。
基本上,我在未提交的分支上启动了提交,并且意外地尝试在我的主分支上启动另一个提交。
ui7jx7zq22#
这也可能来自另一个使用Git的应用程序或插件,例如源代码树。在我的例子中,似乎有一些进程停滞在有关GIT的资源树中。因此,删除index.lock文件只对我无效。我想删除项目目录中.git文件夹中的Souretreeconfig,它起作用了。
jv4diomz23#
如果您面对的是另一个git进程似乎正在此存储库中运行,请使用以下命令,例如,通过‘git Commit’打开的编辑器。请确保所有进程都已终止,然后重试。如果仍然失败,GIT进程可能已在此存储库中早先崩溃:手动删除该文件以继续。
rm-f.git/index.lock
git Reset在Reset命令之后,使用git status、git add和git Commit-a或git Commit-m“Your Message”,git推送原始主机。
e7arh2l624#
如果您正在使用CocoaPods,并且在某一时刻搞砸了更新或安装(手动终止它或其他什么),请尝试
1)删除
index.lock
文件(在.git/index.lock
中)2)删除
Podfile.lock
文件。3)制作新的
pod update
4)尝试发出失败的git命令(在我的例子中是
git add .
)frebpwbc25#
它类似于上面的方法,但在我的例子中有几个
并能够通过这种方式一次移除所有
ioekq8ef26#
这发生在我身上,而Souretree一直告诉我锁定文件存在,但没有这样的文件可供我删除。因此,我只是 checkout 了另一个分支,然后返回到原来的分支,并注意到此更改解决了问题。
guz6ccqo27#
如果您是Windows用户,则会出现错误
'rm' is not recognized as an internal or external command
。这是因为rm是一个Linux命令。因此在Windows中,您可以使用下面的命令来删除.git
文件夹中的index.lock
文件sqxo8psd28#
好的,我最终通过运行‘$git rm.git/index.lock’让它工作了……这很奇怪,因为我之前做了几次,但都没有用,但嘿,电脑,对吗?
k3bvogb129#
删除我的提交消息对我很有效。
然后它说。
致命:无法锁定ref‘head’:无法创建‘.git/refs/head/[Your-Branch-name].lock’:文件已存在。
请注意,您的分支机构名称可能与我的不同。您可以通过执行以下操作来删除此锁定文件:
希望这能帮到什么人。
rggaifut30#
在应用程序的根目录中使用以下命令。这将删除index.lock文件并释放活动锁。