如何在完成后取消对GitHub的推送

时间:2012-05-10 16:06:48

标签: git github push

对于在Git中有经验的人来说,这可能是一个简单的问题,但是当我谷歌的话,我总是得到关于的问题的网页推送到GitHub。我有一个完全相反的问题:我推了一些我从未推过的东西。

我在GitHub上分享了一个开源项目的公共存储库,创建了它的本地克隆,对其进行了处理,并将我的更改提交并推送到GitHub上的forked存储库。

不知何故,GitHub上的差异完全搞砸了并且让我增加了700行和700个删除的行(可能是因为缩进),所以我想取消我所做的推送,再次进行修改,小心缩进,以及在克隆时,将再次推送到我的分叉存储库的原始版本。

我不会因为我做过的数十次试验以及我设法获得的各种结果而烦扰你。问题是:如果你有这个问题,你会如何解决它?

由于 杜乔

3 个答案:

答案 0 :(得分:3)

只需从本地存储库的正确状态执行git push --force origin

答案 1 :(得分:3)

如果你的本地存储库处于正确的状态(也许是一个交互式的rebase来删除有问题的提交?),你应该能够强制推送到GitHub:

git push -f origin <branchname>

答案 2 :(得分:3)

如果没有列出提交,我无法给出确切的行。但你使用强制推动来改变。

git push -f origin oldcomitSHA1:branchname

哦,顺便说一句,你所做的所有事情都会让事情变得更糟。不要问我怎么知道。