我们正在递归地将标签应用于VOB。
以下clearcase命令失败,反过来标记整个vob的过程失败 说实话,我不知道这个命令中每个词的含义 你能否解释它的作用,以便我能弄明白为什么标签的过程失败了。
此外,我附上了错误代码:
cleartool ls -recurse -vob_only -visible -short | xargs cleartool mklabel -replace -follow <label_name>
ERROR CODE: 256
答案 0 :(得分:1)
cleartool mklabel
适用于cleartool ls
返回的每个元素,将列表限制为VOB存储中的对象,并且对操作系统列表命令可见。
但是,cleartool mklabel -replace
(如果找到则移动现有标签)意味着您必须有权修改该标签,或者是元素所有者。
在xargs管道中使用之前,首先在单个文件上首先单独执行mklabel
命令。
另请尝试an alternative syntax I proposed before:
# Windows syntax
cleartool find . -cview -exec "cleartool mklabel -replace TEST_LABEL \"%CLEARCASE_XPN%\""
# Unix syntax
cleartool find . -cview -exec 'cleartool mklabel -replace TEST_LABEL "$CLEARCASE_XPN"'
OP补充道:
奇怪的是,从日志标签看起来对所有文件来说都是成功的。 (
Created label "label_name" on "filepath" version "/main/3"
。)但是当它退出时会抛出这个错误:
Process Create Label Lock for label_name in the VOB: vob_1
Label label_name has been locked
Process Create Label Lock for label_name in the VOB: vob_2
Label label_name has been locked
LABELING FAILED
Flag created: /user/msatcmsvn/build_artifacts/label_name_LABEL.FLAG
这取决于标签是否应用于vob1,2或其他vob中的元素 通常,此消息链接到global type locked或锁定在vob1和lb中的lbtype。
Unix上的cleartool lslock lbtype:LABELNAME@\vob1
(或@/vobs/vob1
)以及cleartool descr -l lbtype:LABELNAME@\vob1
可以帮助您查看问题。