我不小心推送了一个修改了 git 子树的提交。现在要做什么?
I have accidently push a commit which modified a git subtree. What to do now?
我已经推送了一个修改了 git 子树的提交(不是通过从最初拉取子树的存储库中拉取)。将子树恢复到原来的样子的干净方法是什么?
按照以下方法完成
- 手动添加新提交以还原对文件所做的更改。这是最安全的选择
- 还原提交
git revert ddlpopp
(将 ddlpopp 替换为您的提交 ID)。这将简单地添加一个新的提交来恢复指定提交中的更改。这可以用于任何提交,而不仅仅是最后一次提交。可能会引入一些意想不到的变化,推送前一定要仔细检查
头部的显式重写。这应该极少使用。这将简单地重置遥控器的头部
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
我已经推送了一个修改了 git 子树的提交(不是通过从最初拉取子树的存储库中拉取)。将子树恢复到原来的样子的干净方法是什么?
按照以下方法完成
- 手动添加新提交以还原对文件所做的更改。这是最安全的选择
- 还原提交
git revert ddlpopp
(将 ddlpopp 替换为您的提交 ID)。这将简单地添加一个新的提交来恢复指定提交中的更改。这可以用于任何提交,而不仅仅是最后一次提交。可能会引入一些意想不到的变化,推送前一定要仔细检查 头部的显式重写。这应该极少使用。这将简单地重置遥控器的头部
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