在几次提交后命名一个分支

时间:2013-10-04 11:16:57

标签: version-control mercurial branch

让我们考虑以下两个Mercurial场景:

情景A: 我有从rev 1到rev 5的线性历史,我创建了分支foobar并对其进行了修订5-11。然后我切换到master并将rev 12提交给master。我有两个分支(主和foobar),每个分支一个。好的。

情景B: 我有从修订版1到版本10的线性历史记录(只有一个分支 - 主版)。我想将修订版6-10放到一个新的分支中,并从5开始继续我的主人,有效地将自己置于场景A中。我看到mercurial不支持追溯命名分支,所以我没有办法过渡到情景A,但我正在考虑像这样的黑客:

  1. 我创建了一个新的分支(并将其命名为foobar),并将rev 11提交给它
  2. 我切换到master并执行hg update -5,然后将rev 12提交给master
  3. 我现在有两个分支,每个分支一个头?如果我理解正确,情景A和情景B之间的唯一区别是在情景B中,转速5-10没有标记为“分支foobar”,这在实践中并不意味着很多,以及场景A和场景的所有未来行为B是平等的。我是对的吗?

1 个答案:

答案 0 :(得分:1)

你是对的。当您执行hg更新早期版本时,您将看到那时的文件,并能够将这些差异与您在分支上所需的修订区分开来。