Git 撤销已经提交的 push(10)

撤销已经提交的 push

有些时候,代码已经 push 到中央仓库了,才发现有个 commit 写错了。

这时候有两种情况:

  1. 出错内容在自己的 branch
  2. 出错的内容已经 合并到 master 了
出错的内容在你自己的 branch

自己的 branch 的某个 commit 出错时:

  1. 在本地使用 git rebase -i commit标识号 对之前的 commit 进行修改。
  2. 然后使用 git commit --amend 进行提交
  3. 再使用 git rebase --continue 把后面的 commits 应用上去
  4. 修改了本地的之后 使用 git push origin branch1 -f 把分支提交上去,
  5. -f 的作用是进行强制提交(忽略冲突),因为中央仓库可能有本地仓库没有的东西,这样提交上去中央仓库可能会丢西数据,git 会给出相应的警告,从而导致提交失败。
出错的内容已经合并到了 master

使用 git revert HEAD^ 来撤销已经 push 到 master 的 commit

git revert HEAD^

解释:

  • 上面这行代码就会增加一条新的 commit,它的内容和需要撤销的 commit 是相反的,从而和倒数第二个 commit 相互抵消,达到撤销的效果
  • 在本地进行 revert 完成之后,再把新的 commit 提交到中央仓库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值