Git rebase --index.lock 上的交互式块


在 Linux 上使用 git

1.7.10 我正在尝试在大约 100 个提交的分支上使用 git rebase -i。我经常但并不总是遇到这个问题:

在我指出要进行哪些更改后...例如。我只是在上游部分附近做了一个重写,git 继续运行并在应用提交时在命令行中显示一个计数器:比如 [17/100]...

这通常应该是一个相当平稳的操作,但它经常停在中间的某个地方说:

[分离的头 5e1a3c8] 提交消息
作者:用户名
1 个文件已更改, 14 次插入(+), 3 次删除(-)
fatal: 無法創建 '/[path to repository]/.git/index.lock': 檔案存在。

无法应用 05e6b8ef 其他提交消息

当我运行 git 变基时 --continue 时,我会看到当前提交的提交消息,当我关闭文件 git 变基继续,但它省略了该提交......这是毫无用处的,所以目前我只是做 - 中止,但这是一种痛苦......

也许可以手动提交有问题的提交,然后 --继续,但我还没有研究过。

无论如何,当我去检查索引时,锁不存在。也许它在 git 想要创建它的那一刻就存在了,但在我可以用文件浏览器查看它之前它肯定被删除了......

ps:如果我在变基时没有打开 gitg,我似乎无法重现这一点。

有什么线索吗?

更新:更新到 gitg 2.6 似乎已经解决了这个问题

创建该文件是为了确保两个客户端不会相互干扰,以处理同一个存储库。 我曾经遇到过这个问题。 它也可能发生在其他时候,只是交互式变基是一个相当密集的操作,所以你更有可能击中它。 只需在进行变基之前关闭 gitg 和任何其他客户端即可。

最新更新