编辑过去的提交消息

时间:2016-07-24 18:22:24

标签: git

我在过去的提交消息中拼错了一些字,想要修复它们。 他们不是来自最后一次提交(5次提交之前)所以--amend在这里没有工作。

解决这个错误的最简单方法是什么?

1 个答案:

答案 0 :(得分:3)

使用git log --oneline确定要更改的提交。

$ git log --oneline
5ebe0d0 foo
66096c8 bar
d83d7a7 *typo*
a9f4c59 baz
...

然后对该提交的父级进行交互式rebase(使用^标识)。

$ git rebase --interactive 'd83d7a7^'

这应启动默认编辑器 - 除非您已更改它,否则为vim。

(这适用于那些对vim不太满意的人。)

c w 并输入单词edit。按 esc 并键入:wq以保存并退出文件。

现在您所要做的就是git commit --amend,系统会提示您编辑提交消息。然后使用git rebase --continue完成rebase。

注意:如果您有任何合并历史记录,这会使其变平。如果您真的不想这样做,请使用--preserve-merges选项git rebase(以及--interactive)。

相关问题