0

我遇到了一个有趣的情况,我不知道如何描述。所以我在这里是它的截图(请注意,这里有两个程序员正在使用一个都与之同步的中央存储库):

左边的图像更新到其他程序员的核心(现在是头部),右边的图像在合并到开发之前更新到我的核心。

http://d.pr/i/aorX http://d.pr/i/7d7q

如您所见,我有一个Core分支#372合并到Dev. 另一个程序员忘记与我的更改合并#372(在从 375 及以后更改之前,我已经将其推送到中央存储库)并继续。

所以现在我有一个核心分支合并到 dev 中,并且有点无头。另一个程序员的核心现在将是我要开始的那个。那不是问题。一个问题是看到两个核心和杂乱无章的分支树。

我该怎么做才能最终只有一个核心分支?或者这样可以

4

2 回答 2

4

如您所见,我有一个 Core 分支 #372 并入 Dev。另一个程序员忘记合并我在 #372 的更改(在从 375 及以后的更改之前,我已经将其推送到中央存储库)并继续。

这不是我看到的。#372 是双方#373 的父母。如果删除#381+ 和#372+,这两个图是相同的。它们的绘制方式不同,只是因为当前工作副本的父级不同。

当然,它看起来有点奇怪,但这里没有问题。在 #372+ 提交后,它需要在某个时候与 #381(或任何当前的核心头)合并,但这并没有什么特别的。

于 2012-05-16T06:39:46.320 回答
2

现在,Core实际上有 0个拓扑头,因为变更集 381 和 372 都与dev. 在您的图表上,您会看到从变更集 372 延伸出来的长线,因为您的工作目录现在位于该变更集上。该行表明您所做的任何提交都将是 372 的子级。另一个程序员的工作目录位于变更集 381 上,这就是他的图表看起来不同的原因。更新到 381 后,您的图表将与另一张图表相同。

因此,要回答您的问题,这将不是问题,因为Core' 的分支负责人已全部合并到 dev 中。此外,如果您最终使用了多个拓扑头Core,当您拉入新头时,mercurial 会警告您。

于 2012-05-16T01:38:32.813 回答