2

这个问题可能不是很清楚,因为我不是在寻找问题的解决方案,而是在寻求避免将来可能出现的问题。

假设我们有项目 AB 和 C,B 和 C 基于 A 的不同基线。在 B 和 C 的两个方向上进行 B 和 C 之间的合并是否可以,反之亦然,以后不会产生问题吗?

在我的特殊情况下,我将版本从 A 合并到 B,从 B 合并到 C,现在我想从 C 合并到 B。主干中的 A,C 是特定于安装的,B 是特定于客户的。当客户部署了更新的构建时,我们最终会放弃 C。但是现在有一种情况(错误地),一些更改从 A 合并到 C 绕过 B。这些更改应该是 A -> B -> C。问题是从 A 到 C 的一些合并是不平凡的合并,我不不想重复手动从 A 合并到 B 的工作。对于这个版本,从 C 合并到 B 似乎更容易。可以吗?

谢谢!

4

1 回答 1

2

B和C基于A的不同基线。是否可以在从B到C的两个方向上在B和C之间进行合并,反之亦然

您所描述的称为横向合并,您可以看到(通过链接)它们是有代价的:合并在某些时候可能不是微不足道的。

但是,在您的情况下,如果 B 没有触及从 A 到 C 合并(具有非平凡分辨率)的文件,那么从 A 到 B 的合并应该是微不足道的(存储在 A 顶部的版本的简单副本) B 中的一个)
通过从 V 合并到 B,您将包括来自 C 的潜在修改,您必须在合并期间消除这些修改。

以更一般的方式,您可以按照您想要的任何顺序重新设置/交付,但是如果某些工作流程遵循前面链接所示的“横向”模式,则可以操纵某些工作流程以产生非平凡的合并。

于 2009-07-09T15:28:46.370 回答