我试图学习如何使用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目录或在你的一个工作树。git/worktrees/*/index。如果您在工作树中,请锁定。

rm -f .git/index.lock

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


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

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


在应用程序的根目录中使用以下命令。这将删除索引。锁定文件并释放活动锁。

rm .git/index.lock

删除我的提交信息对我有用。

rm .git/COMMIT_EDITMSG

它接着说。

fatal:无法锁定ref 'HEAD':无法创建'.git/refs/heads/[your-branch-name]。lock `:文件已存在。

请注意,您的分支名称可能与我的不同。您可以通过执行;

rm .git/refs/heads/[your-branch-name].lock

对我来说,问题更简单。这是在Sourcetree中,所以我不确定它在多大程度上适用于常规解决方案,但我无意中选择了我的主分支,试图提交而不是未提交的更改。

这通常不是问题,但我已经预先输入了一个提交消息,所以我可以跟踪我在这个小冲刺中所做的事情。

基本上,我在未提交的分支上开始了一次提交,并意外地试图在我的主分支上开始另一次提交。


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

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

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

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

这种情况发生在我身上,虽然sourcetree一直告诉我锁文件存在,但没有这样的文件供我删除。所以我只是签出了另一个分支,然后返回到原来的分支,并注意到这个更改修复了问题。


如果您正在使用CocoaPods,并且在某个时候搞砸了更新或安装(手动杀死它或其他),请尝试一下

1)删除索引。锁定文件(在.git/index.lock中)

2)删除Podfile。锁文件。

3)进行新的pod更新

4)尝试发出失败的git命令(在我的情况下,它是一个git添加。)


使用下面的命令,以防你遇到另一个git进程似乎正在这个存储库中运行。 由'git commit'打开的编辑器。请确保所有流程 终止,然后再试一次。如果它仍然失败,一个git进程 可能已经崩溃在这个存储库之前: 手动删除文件以继续。

Rm -f .git/index.lock

git重置 并且在reset命令后使用git status, git add,和git commit -a或者git commit -m "your message", git push origin master。


它可能正在发生,你的分支已损坏,创建新的分支 Git分支#检查分支。我已经创建了一个新的分支并在工作。

branch -b "main"
git checkout -b "main"  #main is new branch
git add .
git commit -m "all files"
git remote add origin #**YOUR REPO**  https://github.com/tarun-techmarbles/wp-dump-sql-git-push.git
git push origin main  #push with new branch 

虽然上面有一个替代方案,但这并没有解决我的问题。 在我的情况下,我删除了。/zshrc中的“git”插件并重新启动计算机,然后问题就消失了,我猜zsh插件已经做了一些与原始git命令冲突的事情。


Rm -f .git/index。锁不起作用,因为我有一个无法删除的锁定文件。因此,索引。锁也被一些应用程序捕获了。

在Windows系统中,我下载了一个名为Lock Hunter的Unlocker替代品,并删除了这两个文件。Git抓住了他们。


我在更新吊舱时得到了这个错误。我通过删除索引来解决这个问题。将文件锁定在cocoapods的.git目录中。

rm -f /Users/my_user_name/.cocoapods/repos/master/.git/index.lock

它可能会帮助某些人。


当我试图在SourceTree中暂存文件时,我有同样的问题。

要解决这个问题,请到项目目录下的。git文件夹并手动删除index。锁定,你就完成了。


删除索引。锁定在这里:

<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

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


我也面临同样的问题。我需要做更多的工作来解决这个问题。

首先,我删除了文件索引。锁,然后我从现有的Git存储库位置克隆了新的代码。我在不同的地方修改了代码。我复制了.git文件夹和.gitignore文件文件,并粘贴到我所做的代码更改的代码文件夹中。

然后我试着承诺和推动,结果很顺利。 如果你的问题没有以上给出的解决方案,这些信息可能会有帮助。


我在使用Sourcetree时也遇到了同样的问题。但是没有任何索引。锁定文件在我的主机上。我找到了打包的裁判。锁定文件,删除后问题就解决了。


我也遇到过同样的问题。问题是,我试图用一个大小为1.3 GB的XML文件(用作数据集)来推动我的代码。

解决方案是将该文件添加到.gitignore中,然后问题就解决了。


如果你是根据问题的标题(“另一个git进程似乎正在这个存储库中运行”)来结束的,请注意,如果这个问题标题中的消息前面是另一个类似于下面的消息,那么接受的答案将不直接适用于你:

fatal: cannot lock ref 'HEAD':无法创建'/<PATH>/< to >/<REPO>/.git/refs/heads/<BRANCH>. bat /.git/refs/heads/<BRANCH>. batlock `:文件已存在。

在这种情况下,您应该删除该文件(<BRANCH>.lock)而不是.git/index.lock。


如果您使用PowerShell,请使用

rm -Force .git/index.lock


我的Mac很慢,所以我运行了2次git提交:一次执行,第二次被第一次阻塞。 我尝试了rm -f .git/index.lock rm . /文献/头/ your-branch-name .lock < repo>/.git/index.lock的路径 <路径到你的回购>/。Git /modules/<你的子模块>/index.lock的路径

@Ankush:

查找| grep '\.lock$' Rm -f ./.git/index。这是有用的检查-没有.lock文件潜伏

我做了@Chole所做的-检查出我的IDE退出,并再次查看git状态。然后运行$git添加。$git commit -m'msg' $git push

清除了正在运行命令的2个终端,解决了该问题。希望这能帮助到一些人-诊断很好,所以谢谢大家,非常有帮助。

一个缓慢的Mac之前已经导致了这个问题-所以现在我只是等待一段时间,然后运行第二次提交,与第一次冲突。


错误代码将为您提供文件的完整路径。复制该路径并删除该文件。

例如,

fatal: Unable to create '/Users/username/Development/project/.git/index.lock': File exists.

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.
rm -rf fullPathOftheFile
rm -rf /Users/username/Development/project/.git/index.lock

这对我很管用。我得到了同样的错误。

删除HEAD。Windows 10上的“lock”文件。现在我可以在远程上提交和推送我的更改。


在我的例子中,只需运行命令:yarn add commitizen -D

那么一切都好了!


在.git文件夹中,删除索引。锁文件,并尝试再次提交或添加。它将工作。


首先,运行

rm -f .git/index.lock

然后运行

git reset --hard

在命令提示符或Git Bash中。


我正在使用PyCharm IDE。

rm -f .git/index.lock

上面的命令不起作用。不如试试下面的方法:

rm -force .git/index.lock

PyCharm IDE终端截图

PyCharm IDE终端截图


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


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

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

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

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

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


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

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


执行此命令时,

del /f index.lock

你会得到如下的回答,

该进程无法访问该文件,因为它正被另一个进程使用。

您可以使用process hacker等程序重新启动Windows中的git.exe进程。当Git重新启动时,锁就消失了。


如果你不幸使用了你的git或git remove从git总线,或者你不能提交你的代码和“git add .”并远程上传代码,那么请检查以下内容。

这个命令… 假设您的错误类型

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总线或Windows PowerShell 然后使用下面的命令 rm . / index.lock


相关问题:

我有两个自动化 运行在相同的git repo上 并行

但他们不应该这么跑

所以固定了自动化 去除掉复杂的东西


我刚开始学习Python,就遇到了这个问题。在通读并尝试了针对这个问题提供的所有可能的解决方案后,没有一个对我有效。我使用的是Windows 10 64位系统。Visual Studio代码文本编辑器。

所以我简单地复制并粘贴venv文件夹到.git文件夹中,就这样了。


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

步骤1:

转到您要推的项目目录。

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

步骤2:

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

步骤3:

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

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