我希望能够在将它们推送到遥控器之前修改我的提交消息,但我想自动执行此操作。
我可以通过
重新编写所有其他提交git rebase -i origin/master
这会打开一个编辑器,我可以将所有提交从pick
更改为reword
。然后它将调出编辑器,我可以在其中修改我的提交消息。
约束摘要:
reword
。有没有办法做这样的变换?
答案 0 :(得分:6)
由于问题对编辑的性质有点模糊,这些只是你可以做什么的线索。
我不想将每次提交更改为reword。
您可以使用git-rebase -i
更改git config sequence.editor 'sed -i s/pick/reword/'
使用的编辑器,以便不会为rebase-todo弹出编辑器,并替换选择。但这有点笨拙,因为你必须在之后取消配置。 (其他案例也有core.editor
,$EDITOR
)。
您还可以运行git rebase origin/master -x 'git commit --amend'
。 -x
在rebase-todo中的每个exec <argument of the -x>
之后添加pick
行。请注意,这里不需要-i
。修改将允许您更改提交消息,例如git commit --amend -m "new message"
。
我不想手动输入我想要重写消息的每个提交。
您可以将EDITOR变量用于以您希望的方式编辑的非交互式命令,但我不知道您想要进行哪种编辑。
我想用pick
以外的东西来修改所有新提交
见前面的答案。