【问题标题】:Restore Merged Branch in Bitbucket Repo在 Bitbucket 存储库中恢复合并的分支
【发布时间】:2016-05-31 03:10:54
【问题描述】:

帮助!我需要恢复一个分支。我一直在使用 git 和 Bitbucket UI 来尝试简化事情,但错过了一个选中的复选框...

我做了什么:

我创建了一个拉取请求并将我的feature 分支合并到dev 分支中,关闭了feature 分支(期望的结果)。

然后我创建了一个拉取请求并将我的dev 分支合并到staging 分支(需要),但我错过了复选框仍标记为“合并时关闭分支”,这发生了(不需要)。

我想要什么:

我想回滚合并,以便将 dev 分支与 feature 分支合并到其中(及其所有提交历史记录等)。我不在乎staging 分支是否为dev-branch-less,我不介意创建拉取请求并在必要时再次正确合并它们。 如果 dev 分支已经关闭,是否可以恢复它的历史记录?

【问题讨论】:

    标签: git version-control merge bitbucket


    【解决方案1】:

    dev 分支已经关闭,是否可以恢复其历史记录?

    如果您仍然在本地拥有分支 - 只需使用它,将本地分支推送到远程,并在需要时将功能分支合并到其中。


    如果你没有这些分支。

    怎么办?

    阅读this 的答案并了解如何使用 reflog 来恢复您的分支。 [How to move HEAD back to a previous location? (Detached head)

    另一种选择是检查合并的分支并使用checkout 命令将其拆分为所需的提交 - 再次在上述答案中提供完整的详细信息。

    另一种选择是检查基础分支并使用cherry-pick 选择您需要的提交范围。

    【讨论】:

    • 谢谢@codeWizard!我能够使用上面引用的git reset 来更新我的本地dev 分支,然后将其推送到存储库,这也恢复了对先前提交的所有反向引用。
    • 很酷,如果第二个答案对您有所帮助,请也给它投票。我花了很多时间写出好的和详细的答案,以便用户可以解决他们的问题并学习新材料。非常感谢您的支持。
    【解决方案2】:

    您需要做的就是从本地机器推送dev 分支,它将在BitBucket 上创建一个新的origin/dev 分支。无需创建新的拉取请求。

    【讨论】:

    • 这会恢复 dev 分支之前的提交历史吗? @tejasbubane
    • 除非你在本地的 dev 分支上改变了一些东西,否则我假设你没有。
    猜你喜欢
    • 2017-04-03
    • 1970-01-01
    • 2021-10-24
    • 2013-10-08
    • 1970-01-01
    • 2013-07-11
    • 1970-01-01
    • 2015-03-11
    • 2011-06-21
    相关资源
    最近更新 更多