1

我有3个项目A,基于A的B,基于A的C。

更改 A 应首先合并到 B,然后从 B 合并到 C。B 中也有不影响 A 的更改,但其中一些更改需要合并到 C 中。

有一些从 A 被错误地直接从 A 合并到 C 绕过 B 的更改。(我使用“合并”这个词是因为我们需要手动合并这些更改,因为自动交付将包括一堆我们不需要的活动交付给 B 和 C)。

为了解决这个问题,我现在需要合并未在 B 中合并但已在 B 中合并到 C 中的更改,我正在寻找一种方法来列出 C 中通过从 A 合并创建的所有版本,所以我可以将这些文件的更改合并到 B.

谢谢

4

1 回答 1

2

列出 C 中通过从 A 合并创建的所有版本

findmerge当您直接从 A 合并到 C 时(使用,我想), 这些版本应该列在您必须创建的合并活动中。

唯一的问题是,您在此期间是否创建了一个特殊的“合并”活动findmerge
您可能只是重用了 C 上的当前活动,这意味着该活动将包含 C 上当前工作的版本,以及从 A 合并的版本。

另一种方法是将相同的活动(从 A 到 C 的 findmerge 所涉及的活动)从 A 合并到 B。
从 B 到 C 的下一个“正常”合并将:

  • 对已从 A 合并的文件不执行任何操作(因为它们也已根据此“其他方法”合并到 B
  • 合并从 B 到 C 的任何其他修改文件的演变。

我没有将它用于这些合并,而是通过 GUI 版本树工具在 C 中为 A 中的相应活动创建相同的活动并逐个文件合并文件。

除非你只有一两个文件要合并,否则findmerge是要使用命令,因为:

  • 它可以考虑一项或多项活动
  • 并且它不受与使用交付或变基 UCM 操作强制执行的“活动依赖项”相同的“活动依赖项”的约束。

简而言之,findmerge您的经典合并是否能够读取 UCM 活动中的版本,但会执行非 UCM 合并(UCM 基线之间没有超链接)。

于 2009-07-08T15:22:36.850 回答