我需要检索已跨基线 checkin 的所有文件的列表以及所有者名称。我尝试使用 cleartool lsact 命令:
但是,此命令仅针对一项任务进行提取,使用起来有点麻烦。如果我指定两个基线,是否有一个命令可以检索所有任务?
谢谢
最佳答案
像这样的命令:
cleartool diffbl -act bl1@\apvob bl2@\apvob
将为您提供在基线 bl1 和 bl2 之间具有新版本的事件列表。
但是,要获取文件列表(即文件或目录中的元素,而不是所有更新版本中的版本,即使是同一文件),最好的方法是:
cleartool chbl -full bl1@\apvob
cleartool chbl -full bl2@\apvob
(如果他们已经满了,这个命令不会做任何事情)
bl1
和 bl2
标签的所有元素:cleartool find -all -element '{lbtype_sub(REL1) && lbtype_sub(REL2)}' ^
-version '{(lbtype(REL1) && !lbtype(REL2)) || ^
(lbtype(REL2) && !lbtype(REL1))}' -print
参见“Find changes between labels”。
请注意,最后一个问题还提到了“ 报告生成器 与 ClearCase 打包在一起,如果您正在寻找涉及 GUI 而不是 CLI(命令行)的解决方案,这很有趣:
同样,如果这些基线已满,您可以使用它来列出(在
Elements/Labels
下)“Elements Changed Between Two Labels
”或“Versions Changed Between Two Labels
”,具体取决于您的需要。关于clearcase - 如何在明文情况下检索跨基线修改的文件列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10527550/