我不小心推动了修改git子树的提交。现在做什么?

时间:2018-11-08 06:16:30

标签: git git-subtree

我已经推送了一个修改git子树的提交(而不是通过从最初拉出该子树的存储库中拉出)。有什么干净的方法可以将子树恢复为以前的样子?

1 个答案:

答案 0 :(得分:1)

遵循的方法

  1. 添加新的提交以手动还原对文件所做的更改。这是最安全的选择
  2. 还原提交 git revert ddlpopp(用您的提交ID替换ddlpopp)。这将仅添加一个新的提交,以还原指定提交中的更改。这可以用于任何提交,而不仅仅是最后一次提交。它可能会带来一些意想不到的变化,因此请谨慎操作,然后再尝试
  3. 显式重写磁头。这应该很少使用。只需重置遥控器的头部

    git reset --hard HEAD~1

    git push -f

这是一篇很棒的文章 http://christoph.ruegg.name/blog/git-howto-revert-a-commit-already-pushed-to-a-remote-reposit.html