UCM清除案例:如何强制进行活动合并?

时间:2017-01-03 17:52:35

标签: version-control clearcase clearcase-ucm

通常,当我为构建提供活动时,我会遇到一个问题,即一个或两个活动依赖于尚未准备好部署的其他活动。

在大多数情况下我想要做的是强制两个更改之间合并并部署流,以便可以恢复在合并期间丢失的开发中的任何更改。

相反,ClearCase会强制我将这些更改移至新活动,如果我想完全交付,则包含活动

我听说过我可以渲染一个分支过时 - 在某些情况下这会令人满意,但偶尔会有 更改我可能想要包含在部署中 - 有什么方法让我来在进行部署之前强制合并两个更改?

2 个答案:

答案 0 :(得分:1)

有时候,UCM不会因为"链接"而让您进行交付。活动,这是因为之前的交付有created a timeline,这使得这些活动联系在一起(这意味着你不能在没有其他活动的情况下交付一个活动)

在这些情况下,您仍然可以将非UCM方式所需的任何活动与cleartool findmerge合并:请参阅" How to merge changes from a specific UCM activity from one ClearCase stream to another"一个完整的例子。

然后,您将进行交付(使用源流中的所有活动)。

答案 1 :(得分:0)

加入@VonC的答案......

有两种方法可以结合在一起的活动:

  1. 版本依赖:活动A有版本1,2,& 3 of foo.c活动B有版本4的foo.c.您有时也可以使用“1& 3”和“2& 4”
  2. 基线依赖性:活动A和B在从X流到兄弟流Y的相同交付操作中交付。从那时起,A& B必须一起交付,因为它们处于相同的“deliverybl”基线。 / LI>

    可以通过使用

    重新排列变更集来更改数字1
    cleartool chacct -fcsets {Activity X} -tcsets {activity Z} foo.c
    

    第2号几乎是一成不变的......