我在git rebase -i
无法正常工作时遇到麻烦,因为我希望阅读各种在线文档和教程。
我试图将我的最后四个提交压缩成一个。想象一下具有远程dev
的分支origin/dev
并提交
A -> B -> C -> D -> E
│ └ dev
└ origin/dev
我想结束这里:
┌ dev
A -> F
│
└ origin/dev
其中F包含来自B,C,D和E的所有更改。因此,鉴于我已dev
签出,我应该可以运行git rebase -i origin/dev
或git rebase -i HEAD~4
然后南瓜C,D和E,对吧?
这是我的问题:运行任何一个rebase命令都不会弹出一个git窗口来做任何事情。控制台只返回:
Successfully rebased and updated refs/heads/dev.
我很困惑,为什么交互式rebase不起作用?我的Git配置有问题吗?
git config --global rebase.autoSquash
不返回任何内容
答案 0 :(得分:9)
好的,我找到了答案:毕竟 我的git配置。
昨天安装Github的Atom后,我按照http://blog.atom.io/2014/03/13/git-integration.html的说明进行操作,即:
git config --global core.editor "atom --wait"
发生的事情是,每当我试图重新启动Atom时,立即崩溃。 Git将此解释为我完成了rebase并且刚刚选择了所有提交,这些提交没有净效果。
找到烦人的问题,但最终到了那里。