我在我的主分支中做了一些我不再认为合适的修改。为了论证,我有一个名为791fda4e1ac0e1a393e01340bf0fba3f333a73ff
的提交哈希,我现在想要制作我的HEAD,就像回购中一切都稳定一样。我试图做以下事情:
git reset 791fda4e1ac
git reset --soft HEAD@{1}
git commit -m "Revert to 791fda4e1ac"
git reset --hard
然而,当我做git push origin
时,我被拒绝,因为来源认为这是一个非快速的推动:
! [rejected] master -> master (non-fast-forward)
将HEAD恢复为提交哈希791fda4e1ac以及在那里获取原始服务器的正确方法是什么?
答案 0 :(得分:10)
它已被拒绝,因为 非快进 - 它会丢弃其他人可能构建的历史记录。
使用git revert
来创建一个新的提交,它可以撤消现有提交的效果。
或者,如果您确定没有其他人在使用您的存储库,并且您不再关心这些提交,请继续git push -f
忽略该警告。
答案 1 :(得分:2)
你必须强制推动(git push -f origin
)。