Git 锁定文件在操作后保留

Git lock files remain after the operation

我使用 Git 进行版本控制。

最近,在Git提交后,用于锁定HEAD的.lock文件一直保留(.git/HEAD.lock).
Git 进程已死,我可以使用 rm 删除 HEAD.lock 文件。
如果您在 HEAD.lock 仍然完好无损的情况下提交,Git 将因错误而崩溃。

在我提交 50 之前它工作正常,但从那以后它一直表现得很奇怪。
这个问题并不能完全阻止提交,但确实会在每次提交之前运行rm .git/HEAD.lock造成问题。

自从出现这个问题以来,我已经 运行 git update-git-for-windows,但我仍然多次遇到这个问题。

日志:

04:12:11.966: [SameProject] git -c credential.helper= -c core.quotepath=false -c log.showSignature=false add --ignore-errors -A -f -- path/to/file.file path/to/file2.file path/to/file3.file
04:12:12.415: [SameProject] git -c credential.helper= -c core.quotepath=false -c log.showSignature=false commit -F C:\Users\UserA\AppData\Local\Temp\git-commit-msg-.txt --
fatal: cannot lock ref 'HEAD': Unable to create 'C:/path/to/.git/HEAD.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.

这些命令来自 IntelliJ IDEA 运行,我认为 IDEA 导致了某些问题,但查看命令时,我不这么认为。

我是 git 的菜鸟,但我认为 .git 目录中的索引或配置不知何故损坏了,但我不记得做过强制推送或强制退出。

我刚刚尝试提交并再次遇到同样的问题。当时Git日志中有一条令人不安的日志

04:37:56.500: [SameProject] git -c credential.helper= -c core.quotepath=false -c log.showSignature=false add --ignore-errors -A -f -- path/to/fileC.file
04:37:56.585: [SameProject] git -c credential.helper= -c core.quotepath=false -c log.showSignature=false commit -F C:\Users\UserA\AppData\Local\Temp\git-commit-msg-.txt --
warning: unable to unlink 'C:/path/to/.git/HEAD.lock': Invalid argument

我正在使用翻译器。 谢谢。

首先尝试相同的顺序,形成 IntelliJ IDEA,然后重新启动,以尽量减少可能保留该 HEAD.lock 文件句柄的其他进程的存在。

HEAD.lock 对于 Windows 的当前版本 Git 仍然是一个问题,如 issue 2531 and commit 3c769b9.

所示

如果重启后仍然失败,请关闭 IntelliJ IDEA,并尝试从命令行提交,以查看问题是否仍然存在。


OP Peyang concludes in :

I didn't know there was an issue.
If I run git from the command line, it still fails to Unlink, but asks if I want to retry, and if I run y, it completes the commit successfully.