在本地硬重置后无法推送到原点

时间:2014-03-12 23:17:15

标签: git push git-reset

我最近对我的本地git存储库进行了硬重置:换句话说,我将其重置为较早的时间点。现在,当我尝试向上推进origin时,它告诉我它不能,因为origin包含比我的存储库更晚的工作。这是有道理的,但我并不关心原产地在我的本地存储库之后所做的工作。

如果我第一次pull,这就是我被告知的事情,我认为我的本地HEAD将成为origin HEAD的任何内容,即额外的工作和我的硬重置将是徒劳的。

我该怎么办?回顾一下,我并不关心以后关于原点的其他工作,但是在硬复位后,请注意本地完成的额外工作。

我开始认为硬重置不是一个好主意。

1 个答案:

答案 0 :(得分:0)

您可以push --force覆盖HEAD的当前origin,即使您的本地分支不是其后代。

但是:您应该了解其后果:现在,在同一个存储库上工作的其他开发人员无法轻松获取更改,但必须重置/重新绑定到源。使用强制推送/重写推送历史错误,应尽可能避免使用。

另见StackOverflow关于强制推送危险的另一个答案:How to properly force a Git Push?