代码之家  ›  专栏  ›  技术社区  ›  rxmnnxfpvg

Git force回复到HEAD~7

git
  •  13
  • rxmnnxfpvg  · 技术社区  · 14 年前

    我犯下了一些坏事。如何强制将本地回购还原到HEAD~7,然后重新提交,使HEAD现在处于该版本?吉特医生把我搞糊涂了。

    谢谢!

    2 回复  |  直到 14 年前
        1
  •  26
  •   Community CDub    8 年前

    最好的方法是推送另一个提交,以还原意外提交。看到了吗 Jakub Narębski's answer 如何做到这一点。

    如果出于某种原因,推送一个不是快进的更新(例如提交中的敏感位)是值得的,那么给出以下命令:

    git reset --hard HEAD~7
    git push --force origin master

    为了防止你不小心丢了工作,git不会推你的分支。这个 --force 选项禁用此安全功能。

        2
  •  7
  •   Roman Cheplyaka    14 年前

    git reset --hard HEAD~7

    git reset HEAD~7 将删除提交,但将更改保留在工作副本中,以便您可以编辑和重新提交它们。