在使用一个视图更改rebase或任何流配置后的clearcase UCM中,另一个视图需要在视图属性窗口中启用“setcs -stream(CLI)”或“与流同步(GUI)”按钮。如何识别我的视图从流到命令行不同步?确定我的视图不同步的命令是什么?
答案 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中点击来查看视图当前使用的基线名称。
这些是您需要与基础基线进行比较的基线。