2
我有点尴尬。我意外地在两个Git存储库之间合并了代码。无论出于何种原因,回购股票的名称都是相同的,并且在我开始了解回购股票之前,其中一个回购网站的网址已经更改。所以我最终合并了来自两个不同项目的代码。以下是库提交中的插图。如何删除Git合并?
我没有任何名为分支(一直以来的工作HEAD)。如何删除其中一个提交(特别是橙色提交)?
我有点尴尬。我意外地在两个Git存储库之间合并了代码。无论出于何种原因,回购股票的名称都是相同的,并且在我开始了解回购股票之前,其中一个回购网站的网址已经更改。所以我最终合并了来自两个不同项目的代码。以下是库提交中的插图。如何删除Git合并?
我没有任何名为分支(一直以来的工作HEAD)。如何删除其中一个提交(特别是橙色提交)?
你可以这样做:
git reset --hard 628612ac
如果你确信你没有在当前的工作拷贝任何东西,你将需要。这会将HEAD
提交到合并前的提交。实际上没有任何东西被删除 - 其他提交变得无法访问,将来会有垃圾收集。
另一种选择是使用git-revert
:
git revert -m 1 e90aeed8
这将让你的历史记录。它创建了一个新的提交,恢复e90ae ...做的所有事情。
这里有一个关于这个问题的好读:https://www.kernel.org/pub/software/scm/git/docs/howto/revert-a-faulty-merge.txt
谢谢! git revert在本地执行了这个技巧,并且git reset - 在远程repo上工作。链接确实非常有用! –