1

我们在 TFS 2012 上的分支机构遇到了棘手的情况,现在我们不确定我们的行动会产生什么结果。

有问题的分支结构如下:

       /B----2-------
      /
A -------1-----------
            \
             \C---3--

伪图大致是时间正确的 - 首先分支 B 从 A 分支,然后创建了后来的分支 C。数字是有问题的变更集(实际上我们的问题涉及每个分支上的多个变更集,但我已经简化了图表)。

我们想将变更集 3 从 C 合并到分支 B。Visual Studio 警告我们将执行无根据的合并(显然,因为分支 B 和 C 是兄弟而不是父子)。警告是这样的:

TFS 无根据合并

我们继续合并。然后在某个时候,一位开发人员发现我们忘记从分支 A 更新我们的分支 B,并且我们需要从分支 B 中的变更集 1 进行更改。但问题是变更集 1 有一些代码行,这些代码行后来在变更集中进行了修改我们合并的3个(分支C)。

现在的问题是,在我们完成变更集 3 从 C 到 B 的无基础合并之后,当我们将变更集 1 从 A 合并到 B 时,分支 B 会发生什么?

即使在我们进行了毫无根据的合并之后,当 TFS 发现变更集 1 的冲突代码行时,TFS 是否足够聪明以保留最新变更集 3 的更改?

PS我们会从这个错误中吸取教训,并会尽量避免将来毫无根据的合并......

4

1 回答 1

1

从您的图表中,看起来 1 已经包含在分支 C 中。因此,当您从“C”合并到“B”时,更改将已经包含变更集 1 的更改。

于 2014-05-15T12:36:41.983 回答