UCM Clear Case:How 我是否强制 activity 合并?

UCM Clear Case:How do I force an activity merge?

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

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

相反,ClearCase 迫使我将这些更改移动到新的 activity 并包括 activity 如果我想交付 完全 [=22] =].

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

有时,由于 "linked" 活动,UCM 不允许您进行交付,这是因为之前的交付具有 created a timeline,这使得这些活动相关联(这意味着您无法再交付一个没有另一个)

在这些情况下,您仍然可以以非 UCM 方式将您想要的任何 activity 与 cleartool findmerge: see "How to merge changes from a specific UCM activity from one ClearCase stream to another 合并以获得完整示例。

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

添加到@VonC 的回答...

您可以通过多种方式将活动联系在一起:

  1. 版本依赖:Activity A 有 foo.c 的版本 1,2,&3 Activity B 有 foo.c 的版本 4。您有时也可以有“1 & 3”和“2 & 4”
  2. 基线依赖:活动 A 和 B 在同一个交付操作中从流 X 交付到兄弟流 Y。从那时起,A 和 B 必须一起交付,因为它们在同一个 "deliverbl" 基线中.

可以通过使用

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

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