Git交互式变基的问题

9
这基本上是发生的情况:
> git rebase -i HEAD~3
Successfully rebased and updated refs/heads/master.

打开我的文本编辑器后,立即“完成”了rebase操作,甚至我还没有机会做任何事情。有人知道是什么原因引起的吗?
我在Windows 7上使用msysgit:git版本为1.7.3.1.msysgit.0

你使用哪个文本编辑器? - Greg Hewgill
我也注意到了这一点,但它似乎只会在给定的 Git 存储库中发生一次,然后第二次以及之后的每一次都不会再出现。 - Tyler
4个回答

5
这可能是因为Git期望文本编辑器在你完成编辑之前停止并等待。你的文本编辑器可能以这样的方式启动,以至于Git看起来立即完成。
您可以尝试设置EDITOR环境变量,将其指向执行以下操作的批处理文件:
start /wait my_editor %*

但这只是我的猜测,我现在没有测试的情况。


很有可能,我在Linux上使用gvim时也看到过同样的情况。 - Fred Foo
我会尝试批处理...这在我的旧机器上有效,但我不知道我的现在的机器有什么不同。我已经尝试使用相同的编辑器和另一个编辑器,两者都存在此问题。 - Karl
解决了,原来是 msysgit 处理路径的一些奇怪问题。https://dev59.com/NnI-5IYBdhLWcg3w3crS - Karl
@larsmans:你是怎么解决的?我在Linux上也有同样的问题,还涉及到gvim - eckes

4

1
+1. 我的 core.editor 部分缺失了 --wait。对于使用 VSCode 的用户,请按照链接中描述的方式使用 git config --global core.editor "code --wait". - Boghyon Hoffmann

2

0

我在使用Notepad++时遇到了同样的问题。

我当时处于Notepad++的管理员模式

回到正常模式后,问题得到解决。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接