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

问题描述 投票:4回答:2

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

git rebase -i abcdef

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

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

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

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

git rebase
2个回答
5
投票
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/"'


3
投票

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

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

如果链接中断,Web archive snapshot

© www.soinside.com 2019 - 2024. All rights reserved.