git rebase --editor = / something / other / than / vim? (为了更容易挤压)

时间:2013-10-31 18:18:24

标签: git vim editor git-rebase

我很高兴使用vim作为提交的默认编辑器,并且不希望改变它。然而,当谈到变基时,我发现自己压缩了数十次和几十次提交,我发现使用像Textwrangler这样的交互式编辑器更容易(用“壁球”代替“壁球”除了顶部提交)。

有没有办法为一次性rebase命令指定备用编辑器?

我知道我能做到:

:%s/pick/squash/

但这有其轻微的烦恼。

编辑 - 如评论中所述,您可以通过转到第二行并执行

来非常有效地压缩除顶部提交之外的所有提交
:,$s/pick/squash/

(请注意逗号和美元与原始版本不同)

2 个答案:

答案 0 :(得分:54)

尝试在命令之前添加GIT_EDITOR环境变量,如下所示:

GIT_EDITOR=<editor of choice> git rebase <...>

例如,要使用nano,我会输入:

GIT_EDITOR=nano git rebase -i abcdef1234

答案 1 :(得分:8)

所有交互式rebase都有更好的选择。

https://github.com/sjurba/rebase-editor

这是一个专门为交互式rebase编写的自定义CLI应用程序。

安装:

npm install -g rebase-editor
git config --global sequence.editor rebase-editor 

或使用纱线:

yarn global add rebase-editor
git config --global sequence.editor rebase-editor