用于标记的Clearcase命令失败

时间:2016-04-21 07:56:25

标签: unix version-control label clearcase vob

我们正在递归地将标签应用于VOB。

以下clearcase命令失败,反过来标记整个vob的过程失败 说实话,我不知道这个命令中每个词的含义 你能否解释它的作用,以便我能弄明白为什么标签的过程失败了。

此外,我附上了错误代码:

cleartool ls -recurse -vob_only -visible -short | xargs cleartool mklabel -replace -follow <label_name>
ERROR CODE:     256

1 个答案:

答案 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可以帮助您查看问题。