【发布时间】:2017-01-11 20:31:51
【问题描述】:
我正在尝试为 Base ClearCase 编写一个脚本,该脚本将查找给定分支和标签上的所有文件,并将这些文件简单地合并到另一个分支,然后用不同的标签标记新合并的文件。
例如,给定分支上的文件\main\Proj\Proj_INT1 并标记为Ver4,我想将文件合并到\main\Proj 分支并用Ver4X 标记它们(如果它们需要合并)。
我知道我可以使用-fver "\main\Proj\Proj_INT1\Ver4" 来查找我想要合并的文件的版本,但我不确定如何将合并与应用标签结合起来。
从文档来看,它看起来不可能做一个cleartool findmerge ... -merge -exec "cleartool mklabel ...",所以我目前正在尝试一个cleartool findmerge ... -log <out_file.log> -print,然后解析生成的日志以获取所有文件版本。但是,鉴于findmerge 命令在目录处停止,我需要多次重复此操作,直到合并所有目录和文件(尝试编写脚本和解析 cleartool 输出有点头疼)。
是否有一种惯用或简单的方法来执行合并然后标记文件?也许我可以执行合并并让 cleartool 生成一个日志,其中显示合并文件的版本(所以我然后可以标注)吗?
此外,如果我执行cleartool findmerge ... -merge 操作,它如何处理非平凡的合并?我不希望任何非平凡的合并,但我想跳过错误或如果遇到非平凡的合并,则完全停止合并。
【问题讨论】: