我试图学习如何使用Git,并创建了一个带有HTML, CSS和JavaScript文件的小项目。我从我的基本空项目做了一个分支,然后对我的代码做了一些更改。我尝试进行临时更改,但我得到以下错误消息:

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,因为我不知道如何摆脱我以某种方式得到的。

是否有办法解决这个问题,或者我应该开始一个新的存储库?


当前回答

除了删除。Git文件夹中的锁文件外,如果你正在使用Visual Studio Code和Git Graph扩展,请尝试卸载它,然后重新安装。它应该能解决这个问题。

其他回答

好的,我最终通过运行'git rm .git/index.lock'来让它工作…

这很奇怪,因为我以前这么做过几次都没有用,但是嘿,电脑,对吧?

在这里输入图像描述 如果这是你的情况,那么很容易解决。该问题将通过以下步骤解决。

在您工作的文件夹中输入Git的隐藏文件夹。 删除”指数。锁”文件 使用“git status”命令查看git状态 如果你的文件没有提交,你必须使用“git add——all”命令提交你的文件 再次检查git状态,执行文件并提交

做得好!我希望你已经解决了这个问题。

尝试删除索引。锁定文件在你的。git目录或在你的一个工作树。git/worktrees/*/index。如果您在工作树中,请锁定。

rm -f .git/index.lock

这类问题通常发生在同时执行两个git命令时;可能一个来自命令提示符,一个来自IDE。

对我来说唯一有效的方法是:

如前面的答案所示: Rm -force .git/index.lock 结帐到任何其他分支机构。检查你的分支机构。

它类似于上述方法,但在我的情况下,我有几个这样的方法

.git/refs/heads/<branch_name>.lock

通过这种方法,可以一次性去除

find -name "*.lock" -exec xargs rm {} \;