git修改历史提交(commit)信息
我们在开发中使用git经常会遇到想要修改之前commit的提交信息,这里记录下怎么使用git修改之前已经提交的信息。
一、修改最近一次commit的信息
-
首先通过
git log
查看commit信息。
我这里一共有6次commit记录。
最新的commit信息为“Merge branch ‘master’ of https://openi.pcl.ac.cn/floraachy/park_clould_004”。
我想要修改最近一次的commit信息。
注意这里显示的顺序其实是倒序。最新的提交在最下面,最老的提交在最上面。
-
使用命令:
git commit --amend
进入命令模式,这是按 a或者i或者o进入编辑模式,我们修改好commit信息后按Esc健退出编辑模式,然后:wq保存我们编辑的信息(注意:如果无法退出,请采用英文输入法)。
-
git push --force
到远程仓库
注意:必须加上--force
。如果只适用git push
会报错error: failed to push some refs to 'xxx.git'
二、修改最近两个或者两次上的commit信息
比如我一共有6次提交,我需要将近两次的commit都改为1个commit:
注意这里显示的顺序其实是倒序。最新的提交在最下面,最老的提交在最上面。
1、 使用命令:git rebase -i HEAD~2
这是按 a或者i或者o进入编辑模式,对应的pick改成e或者edit。退出保存,然后:wq保存我们编辑的信息(注意:如果无法退出,请采用英文输入法)。
-
使用
git commit --amend
去修改具体的commit信息
-
用
git rebase --continue
完成
-
git push --force
到远程仓库
注意:必须加上--force
。如果只适用git push
会报错`error: failed to push some refs to ‘xxx.git’