如何压制`git rebase --continue`的编辑器?

时间:2017-04-19 08:06:44

标签: git macos command-line git-rewrite-history

我经常重新定位交互式以对历史记录进行微小更改(例如删除空白行或编辑一行)。在大多数情况下,这些变化都是基于一些同行评审。

起初我做了我的改变:

git rebase --interactive 83bbeb27fcb1b5e164318fa17c55b7a38e5d3c9d~
# replace "pick" by "edit" on the first line
# modify code
git commit --all --amend --no-edit
git rebase --continue

如果以下某个提交中存在合并冲突,我会解决它们并执行此操作:

git rebase --continue
# the commit message is shown, but does not have to be changed, so I just save and exit the editor
git rebase --continue
# the commit message is shown, but does not have to be changed, so I just save and exit the editor
git rebase --continue
# the commit message is shown, but does not have to be changed, so I just save and exit the editor
...

--no-edit的{​​{1}}参数是否可以避免使用编辑器(类似于git rebase --continue)?

1 个答案:

答案 0 :(得分:7)

  

我尝试了;(就像那样:GIT_EDITOR=true;git rebase --continue),但这不起作用   (我正在使用mac)

GIT_EDITOR=true;

这将在当前shell会话中设置GIT_EDITOR,以便遵循所有命令。

使用:

GIT_EDITOR=true git rebase --continue

GIT_EDITOR值作为环境变量传递给git命令分叉的子shell。