关于Git:如何撤消GitHub回购上的提交?

How to undo a commit on a GitHub repo?

本问题已经有最佳答案,请猛点这里访问。

我的本地回购是最新的,然后GitHub回购稍旧,然后还有另一个最旧的回购,我对最旧的回购做了一些临时更改,然后意外地推到GitHub(我想把本地回购推到GitHub)。

现在,我要做的是对Github回购进行硬重置,以撤销意外提交,就好像什么都没有发生过一样,我该怎么做呢?我应该将github repo拉到一个新文件夹中,然后将其还原,然后再将其推回到github中吗?


找到要成为Github回购协议上最新的提交文件的sha1。这可能是在你不想推动的事情发生之前的承诺。

那么在你的旧回购协议上:Git重置--硬git push—强制原点主控形状

(或任何远程和分支名称)

这应该能完成任务。另外,请确保所有提取/克隆了"坏"提交的人也使用这些命令将其删除,否则,当他们进行推送时,它将再次被推送。