修改已push到远端的commit

背景:当我们将commit提交到远端后,发现提交的commit message并不符合规范,需要修改,就需用到以下方法进行修改。

1.修改最近一次提交commit message

直接使用命令 git commit --amend 进入 vi编辑模式

按i进入编辑模式,直接修改commit信息, 按esc再:wq保存退出

git push 到远程仓库

image.png

2.修改历史commit message

先使用git log 查出你所需要修改的commit位置,比如倒数第三条

image.png

使用命令:git rebase -i HEAD~3 (其中3就是commit倒数位置)进入vi编辑页面

其中git log中倒数第n条就显示在该编辑页面的最新第1条

按i进入编辑模式,将需要更改的commit的pick改成e/edit, 按esc再:wq保存退出

image.png

如遇到:(dev|REBASE 1/3),则只需在需要修改的rebase序号(此处就是1)是执行git commit --amend

image.png

进入VI编辑页面,修改commit信息, 按esc再:wq保存退出

image.png

然后执行git rebase --skip跳过不需要修改的rebase分支,执行成功。

image.png

最后执行git rebase --continue命令完成rebase修改

最终push 到远程,至此,修改完成。

tips: 若进行到(dev|REBASE 1/3),中的一个阶段想退出此流程,执行命令git rebase --abort退出rebase 到主分支

mention:

push 到远端时,若执行git push, 则只会在之前的commit记录后追加一条记录,但不会更新之前的commit信息

若执行git push -f ,强制推送,则会更新之前的旧commit信息,进行覆盖

转载需标明出处

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容