如何删除推送的git合并提交

如何删除推送的git合并提交,git,git-commit,git-revert,Git,Git Commit,Git Revert,我在回购协议的主分支中合并了几个devel提交,只是为了发现gitaward在某个时候把主分支搞砸了 现在,我尝试了上面描述的各种方法,以便撤消这些提交(除了主服务器上的合并之外,没有其他提交)。通过这种方式,master确实被重置为早期版本 但是,我仍然拥有无头分支的完整合并历史(图像上的灰色路径): 我试图恢复、重置分支等,但没有成功,唉 如何完全删除提交(c518859ce4,7574f10f68)?1)选项还原: git revert c518859ce4 git rev

我在回购协议的主分支中合并了几个devel提交,只是为了发现gitaward在某个时候把主分支搞砸了

现在,我尝试了上面描述的各种方法,以便撤消这些提交(除了主服务器上的合并之外,没有其他提交)。通过这种方式,master确实被重置为早期版本

但是,我仍然拥有无头分支的完整合并历史(图像上的灰色路径):

我试图恢复、重置分支等,但没有成功,唉

如何完全删除提交(c518859ce4,7574f10f68)?

1)选项还原:

   git revert c518859ce4
    git revert 7574f10f68
git push
然后您可以推送:

   git revert c518859ce4
    git revert 7574f10f68
git push

问题在于第一次提交时的标记。它让鬼魂活着


去掉标签,检查你的重置主机(我想它在图表的下面)。您的历史记录将看起来是正确的。

除非我做错了什么,否则这似乎无法解决问题:这将创建合并提交,而不会删除错误/不必要的提交!没有办法从某个位置完全删除分支或无头分支吗?!没有合并,没有备份,只需撤消错误的提交即可?!好的,请读者注意:只要没有阻止垃圾收集提交的标记(请参阅答案),它就可以工作!问题在于第一次提交时的标记。它让鬼魂活着。摆脱它,检查你的重置主机。这就成功了!非常感谢!耶!我喜欢这种情况。我会回答这个问题。