用于识别与流不同步的clearcase ucm视图的命令?

时间:2013-10-23 12:00:09

标签: clearcase-ucm

在使用一个视图更改rebase或任何流配置后的clearcase UCM中,另一个视图需要在视图属性窗口中启用“setcs -stream(CLI)”或“与流同步(GUI)”按钮。如何识别我的视图从流到命令行不同步?确定我的视图不同步的命令是什么?

2 个答案:

答案 0 :(得分:1)

感谢VonC。

以下方法失败(流配置规范和视图配置规范有时不按顺序)。 cleartool catcs将返回一些我们无法与基础基线进行比较的uuid。 我通过将cleartool dump -l <streamname>输出与cleartool catcs输出进行比较来实现此目的。

找到另一种方法。

ucmutil命令ucmutil lspvar -pvar SUM_CSPEC_ID <streamname>将返回流的config_spec_id,可与cleartool catcs | grep -i identity输出进行比较。 config_spec_id在视图配置规范中称为标识UCM.Stream oid:uuid @ vobuuid:uuid config_spec_id 在第二行。

答案 1 :(得分:0)

通常情况下,不同步视图中 cleartool ls 的输出结果会反映出不同步状态。

你也可以尝试documented in this technote一个cleartool结帐 如果它返回此错误消息:

cleartool: Error: Checkout is currently disabled for element "element_name".
Its config spec rule information is currently unavailable 
due to either an aborted update or an update in progress.

...这意味着视图不同步。

在某些情况下,不要忘记先做一个:

 cleartool chstream -generate yourStream@\pvob

如果组件已从不可写转换为可写,那么这很有用。

但如果基础基线已经改变,那么cleartool setcs -stream就足够了。

  

如果我的所有组件都只在该流和视图中读取(我只构建)。在这种情况下,如何检查我的视图是不同步的?

一种方法是获得:

  • 流的所有基础基线(with fmt_ccase

    cd /path/to/my/view
    myStream = $(cleartool lsstream -cview)
    myFoundationBaselines = $(cleartool descr -fmt "%[found_bls]CXp" $myStream)
    
  • 将这些基线与视图的基线进行比较 (grep在配置规范的上一步中找到的每个基线)

     cd /path/to/your/view
     cleartool catcs
    

简而言之,没有直接的原生方式:你需要编写脚本。

您可以通过在-mkbranch的catcs中点击来查看视图当前使用的基线名称。
这些是您需要与基础基线进行比较的基线。