我需要检索已跨基线 checkin 的所有文件的列表以及所有者名称。我尝试使用 cleartool lsact 命令:

但是,此命令仅针对一项任务进行提取,使用起来有点麻烦。如果我指定两个基线,是否有一个命令可以检索所有任务?

谢谢

最佳答案

像这样的命令:

 cleartool diffbl -act bl1@\apvob bl2@\apvob

将为您提供在基线 bl1 和 bl2 之间具有新版本的事件列表。

但是,要获取文件列表(即文件或目录中的元素,而不是所有更新版本中的版本,即使是同一文件),最好的方法是:
  • 确保这些基线是“完整的”基线:如果需要,将它们提升到完整:

  • cleartool chbl -full bl1@\apvob
    cleartool chbl -full bl2@\apvob

    (如果他们已经满了,这个命令不会做任何事情)
  • 列出在不同版本上具有 bl1bl2 标签的所有元素:

  • 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/

    10-13 02:53