发布于 

git 修改上次 commit 描述

今天在提交代码的时候 commit 描述里多了一个空格,强迫症患者表示不能忍受

有时你提交过代码之后,发现一个地方改错了,你下次提交时不想保留上一次的记录;或者你上一次的commit message的描述有误,这时候你可以使用这个命令:

1
git commit --amend

但是,如果你想修改上上次,甚至上上上次

你需要先使用这个命令

1
git rebase -i HEAD~2

接上图,其实我这个提交本来是上次的,结果我在提交 本次提交 之前,在 github 上直接修改过 README.md,然后我在 git push 后顺便 git pull(同步更改)了,就导致我的这个提交变成上上次了。

所以我需要先使用这个命令 git rebase -i HEAD~2

如果是上上上次 后面数字以此类推

之后你会看到这个画面

上面是显示你最近的两次提交记录,找到你需要的那个 commit,进入编辑模式 i 把前面的 pick 改成 edit,最后 wq 保存

现在你再执行 git commit --amend 修改,同样是进入 vim,进入编辑模式 i 改好后 wq 保存

然后执行 git rebase --continue 你会得到如下提示,表示你操作成功

然后现在 git log 一下,会发现你已经修改成功

最后一步,强制推送到远程库 git push -f

推送成功!

然后进入github远程库查看:

已经修改了提交描述信息,且原来的 git 版本没有了

但是有个地方要注意,就是该操作会改变你原来的 commit id

警告

这个变基操作在多人开发下一定要谨慎使用