如何确保文件不能在UCM中的不同项目中分支?

时间:2016-08-03 10:09:25

标签: clearcase clearcase-ucm

如何确保文件不能在UCM中的不同项目中分支?

对于所有并行项目

,应始终从/main/LATEST/中选择

2 个答案:

答案 0 :(得分:0)

UCM视图始终根据流的配置构建,因此,始终根据流关联分支的LATEST选择文件。

话虽如此,没有什么可以阻止您编辑视图的配置规范,并在配置规范的开头添加规则:

element path/to/file /main/LATEST

但这仅适用于一个视图,而不适用于"所有并行项目"。

更通用的方法至少是用cleartool lock锁定文件。

这样,如果您尝试在任何视图中签出文件,它就不会创建分支。
如果该文件从未在/main以外的任何分支中签出,那么您可以通过锁定文件确保任何UCM视图都会在/main/LATEST选择它。

答案 1 :(得分:0)

@VonC,这是一种方法......但是你提到的configspec更改将在下次重新生成流时被覆盖。一切都取决于这些项目的组件架构,但还有其他几种方式:

  1. 您可以将文件移动到不可修改的组件(如果它已经不在一个组件中)。如果它是一个没有人应该修改的共享文件,那么在纯UCM环境中,它在逻辑上属于共享的不可修改组件。
  2. 如果文件位于非UCM VOB中,您可以添加相应的"元素... -nocheckout"在" end ucm"之后的视图configspec的行线。这些将保留在rebase中。您可能需要额外的"元素"使文件可见的行。
  3. element /vobtag/path/to/file /main/LATEST -nocheckout element /vobtag/... /main/LATEST

    顺序很重要,因为视图配置按顺序处理。所以,如果-nocheckout行是"元素/ vobtag / ... / main / LATEST"它将被忽略,您将能够检出该文件。