Clearcase UCM:如何通过从流B合并创建的流A中的版本

时间:2009-07-08 14:20:46

标签: clearcase clearcase-ucm

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

更改A应首先合并到B,然后从B合并到C. B中的变化也不会影响A,但有些变化需要在C中合并。

A的一些变化已被错误地从A到C合并,绕过B. (我使用“合并”这个词,因为我们需要手动合并这些,因为自动交付将包括一系列我们不需要提供给B和C的活动。

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

由于

1 个答案:

答案 0 :(得分:2)

  

列出C中通过合并来自A

创建的所有版本

当您直接从A合并到C时,必须在合并活动中列出这些版本(我假设使用findmerge)。

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

另一种方法是将相同的活动(由A到C的搜索相关的活动)从A合并到B. 从B到C的下一个“正常”合并将是:

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

  

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

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

  • 它可以考虑一个或多个活动
  • 并且它不受与使用传递或rebase UCM操作强制执行的“活动依赖关系”相同的约束。

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