问题
在准备提交的时候发现上一次的commit message,因为是在之前的基础上改的,没完全改过来就提交并push了。现在需要更改上次的提交消息。
因为我在上一次提交后已经将代码修改过了,所以需要使用交互式变基,然后强制推送以更改提交历史记录。如果是要修改最近推送提交的消息,也可以参考github的官方文档docs.github.com/cn/pull-req…。
步骤
-
如图是需要修改的提交消息。
在修改之前要先把这次的代码提交,否则无法继续。
-
在命令行上,导航到包含要修改的提交的仓库。
-
使用
git rebase -i HEAD~n命令在默认文本编辑器中显示最近n个提交的列表。我用的是
$ git rebase -i HEAD~3显示如下信息。我需要修改的是第二条
- 在要更改的每个提交消息的前面,用
reword替换pick。保存并关闭(:wq)。
- 生成的提交文件如下
在每个提交文件中,输入新的提交消息,保存并关闭。
- 修改完成后
-
使用 push - force 命令强制推送旧提交。
$ git push --force origin example-branch
- 修改成功
延伸阅读
git 修改已提交的内容:blog.csdn.net/sodaslay/ar…
Git-重写历史:git-scm.com/book/zh/v2/…