如何修改已经提交到远程的commit信息

3,378 阅读2分钟

有时候一不小心写错别字,然后直接push到了远程,好丢人哦~所以一定要改过来,那么怎么以最快的方式去改过来呢?分为两种,第一种假设你要修改的是最新的一次提交,第二就是非最新的某次提交,下面测试可行-_-

1假设你要修改的是最近的一次提交 (git commit --amend)

假设我要将下面改成feat fix bug

第一步

git commit --amend

第二步

按一下 i (进入可编辑的状态),然后修改文章

第三步

按一下esc键, 再按:wq(如果你发现:wq出现乱七八糟的提示,看看你的语言是不是英文模式,再操作一次)退出

第四步

直接强推 git push origin 分支名 -f

五结果

我之前就是没有按i进入编辑模式,死都改不动 哈哈哈哈哈

2. 非当前最新的一次commit,或者说任何一个commit修改 (git rebase -i + git amend )

假设我提交了2个commit的, c1, c2,我想把c1修改,再这里就是把feat 完成用户管理页面改成 feat 开开心心

第一步

git rebase -i HEAD~2 (因为这里我要查看2个就行,所以用2,想查看多少个commit,就写多少个)

第二步

按i键进入编辑模式,将需要修改的commit的pick变成edit, 然后直接按esc键,然后:wq退出(如果你发现:wq出现乱七八糟的提示,看看你的语言是不是英文模式,再操作一次)

第三步

接下来会提示你 如果你要修改就执行git commit --amend 一旦你觉得修改满意,就执行git rebase --continue 因为是要修改所以执行git commit --amend

git commit --amend

第四步

按i键进入编辑模式 ,修改你的内容,修改完了之后 按esc 然后按:wq 退出 (如果你发现:wq出现乱七八糟的提示,看看你的语言是不是英文模式,再操作一次)

第五步

git rebase --continue

第六步 强推所在分支

git push origin test1 -f

结果