【问题标题】:Git reverse commit a pushed merge in SourceTree [duplicate]Git反向提交SourceTree中的推送合并[重复]
【发布时间】:2016-06-09 17:03:06
【问题描述】:

我不小心合并了一个分支并选中了“立即推送更改”。不幸的是,我犯了一个合并错误,现在我不想进行反向提交来删除它。但是,每次我在 SourceTree 中执行此操作时都会出现以下错误:

错误:提交 X 是一个合并,但没有给出 -m 选项。致命的: 还原失败

有什么方法可以做到这一点,还是我必须使用终端?一直在阅读它,但找不到针对此特定案例的解决方案。

【问题讨论】:

    标签: c# git merge atlassian-sourcetree


    【解决方案1】:

    您可以找到有关如何将您的分支(或主分支)恢复到合并之前的状态(硬还原)的答案。如果可以将所有内容恢复到该状态,那很好。但通常我必须恢复功能分支的合并,同时保留合并后所做的提交。

    只要做:

    git revert -m 1 [copy-paste-the-id-of-the-merge-commit-here]
    

    如有必要,编辑冲突并提交。

    编辑:是的,如果您要撤消合并提交,SourceTree 应该传递 -m 1 参数。

    【讨论】:

      【解决方案2】:

      您可能需要右键单击最新的提交并单击:

      “将当前分支重置到此提交”

      并在出现提示时选择硬模式。

      重要提示: 单击硬模式后,所有工作副本更改都将被丢弃。

      希望这会有所帮助!

      干杯!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-12-21
        • 2011-06-23
        • 1970-01-01
        • 1970-01-01
        • 2021-04-20
        • 1970-01-01
        • 2014-07-13
        相关资源
        最近更新 更多