如何恢复以前合并的分支

时间:2017-10-19 22:43:43

标签: git branching-and-merging

我有一个分支" A"。我分支了#34; A"创建一个分支" B"。我添加了对分支的提交" B"并将其合并回分支" A"。然后,我删除分支B。

我将其他分支合并为分支" A",例如" C"。我想恢复分支" B"来自分支" A"。我该怎么做?

                            Recover B here
                              |
                              v
A-------*-----*----*-----*----*-----
         \    |     \    |     \
          B---`      C---`      B--
          ^                     ^
          |_____________________|

            The second branch of
            B should be identical
            to the first.

感谢。

1 个答案:

答案 0 :(得分:0)

分支引用是当前特定提交的标签。 git中的所有内容几乎立即减少了对commit dag aka history中的特定提交的引用,或者用于为新提交构造新内容的工具。查看一个分支引用,构造并添加一些新内容,进行新的提交,git在新提交中重新启动分支引用。

您删除了B分支引用,但它引用的提交仍然存在,就在您绘制它的位置。你可以"恢复分支"只有git branch B $that_commit正如@Blorgbeard所说,但我......实际上,我敢说"我们是"小心,因为你以不寻常的方式使用文字。有大量被误导和误导的教程"在那里试图"解释"炮制的抽象,听起来好像你已经读过至少一个。

您可以使用您想要的任何祖先和内容构建提交,但是不存在具有不同祖先或内容的相同提交。您对"相同"的要求分支让我相信你已经阅读了上面提到的一些乱语。无论我所看到的是哪些通信,那些引导人们按照你使用它们的方式使用文字的方式,与Git中真正存在的是最恰当的巧合。

你唯一要求的就是挂一个" B"在一些提交上标记,但不知道你想要什么内容,我们无法帮助你构建它。