我最近对我的本地git存储库进行了硬重置:换句话说,我将其重置为较早的时间点。现在,当我尝试向上推进origin
时,它告诉我它不能,因为origin
包含比我的存储库更晚的工作。这是有道理的,但我并不关心原产地在我的本地存储库之后所做的工作。
如果我第一次pull
,这就是我被告知的事情,我认为我的本地HEAD
将成为origin
HEAD
的任何内容,即额外的工作和我的硬重置将是徒劳的。
我该怎么办?回顾一下,我并不关心以后关于原点的其他工作,但是在硬复位后,请注意本地完成的额外工作。
我开始认为硬重置不是一个好主意。
答案 0 :(得分:0)
您可以push --force
覆盖HEAD
的当前origin
,即使您的本地分支不是其后代。
但是:您应该了解其后果:现在,在同一个存储库上工作的其他开发人员无法轻松获取更改,但必须重置/重新绑定到源。使用强制推送/重写推送历史错误,应尽可能避免使用。
另见StackOverflow关于强制推送危险的另一个答案:How to properly force a Git Push?