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

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


当前回答

对我来说,解决方案很简单,只需关闭IDE,然后签出。我的一个队友接受了我的PR,并通过TFS合并了代码。删除.lock文件不起作用。

其他回答

我也面临着类似的问题。我是一个Windows用户,所以前面所有的答案都是使用命令行Git Bash或任何其他。我手动使用了以下方法,它对我很有效:

步骤1:

转到您要推的项目目录。

在我的例子中,它是E——移动

步骤2:

在文件夹视图设置中启用显示隐藏文件夹

步骤3:

启用show hidden folder后,您将在项目目录中获得.git文件。 打开。git文件夹并找到索引。锁定文件,并删除它。

现在您可以轻松地输入代码。

这也可能来自其他使用git的应用程序或插件 例如源树。在我的情况下,似乎有一些进程卡住了源树关于git。删除索引。锁档对我没用。我想删除项目目录下。git文件夹中的sourcetreconfig,它工作了。

rm -rf .git/index.lock
rm -rf .git/sourcetreeconfig

如果您使用PowerShell,请使用

rm -Force .git/index.lock

删除索引。锁定在这里:

<path to your repo>/.git/index.lock

此外,如果存储库有子模块,请删除所有索引。锁定在这里:

<path to your repo>/.git/modules/<path to your submodule>/index.lock

如果您是Windows用户,将会出现“‘rm’不能被识别为内部或外部命令”的错误。这是因为rm是一个Linux命令。所以在Windows中,你可以使用下面的方法来删除索引。锁定文件在。git文件夹中:

del -f .git/index.lock