Git在交互式rebase中添加所有提交消息

时间:2017-04-11 15:14:29

标签: git rebase

我运行了一个交互式rebase来提交abcdef

git rebase -i abcdef

在编辑器中 - Vim我将所有pick hash行更改为

reword hash PREFIX: Original commit message使用此vim命令

%s/pick \(\w\{7}\)/reword \1 PREFIX:/

然后git继续提示我为每次提交编辑消息。有没有一种简单的方法来批处理这个过程?

2 个答案:

答案 0 :(得分:4)

GIT_EDITOR='sed -i "1s/^/PREFIX: /"' GIT_SEQUENCE_EDITOR=vim \
        git rebase -i abcdef

或者你也可以

git -c core.editor='sed -i "1s/^/PREFIX: /"' \
        -c sequence.editor=vim \
        rebase -i abcdef

如果您不想使用环境覆盖。

如果你知道你要重新录制它们,你甚至可以查看序列GIT_SEQUENCE_EDITOR='sed -i "s/^pick/reword/"'

答案 1 :(得分:3)

Google的另一个镜头让我想到了这个:

https://davidwalsh.name/update-git-commit-messages

Web archive snapshot如果链接中断