如何撤消推送的提交,以便它从未发生过?

时间:2012-01-25 06:11:21

标签: git

我搞砸了......

如何撤消推送的提交,以便它从未发生过?

谢谢!

1 个答案:

答案 0 :(得分:2)

警告:这里的每一步都是破坏性的。不要误解,并在开始之前复制你的回购。

git reset --hard $what,其中什么是SHA或者您要在该分支上返回的内容。 (例如:HEAD^如果您只想丢弃最新的提交。)

完成后,git push --force ...将其移至远程存储库。

解决了所有问题...除了从远程存储库中删除死blob等。如果这对你很重要,那么生活就更难了。没有任何协议方法可以摆脱它,因此您要么删除远程仓库并创建一个新的干净副本,要么执行后端特定的操作。