我们将标签递归地应用于 VOB。
遵循 clearcase 命令失败,进而标记整个 vob 的过程失败。
老实说,我不知道这个命令中每个单词的含义。
您能否解释一下它的作用,以便我弄清楚标签过程失败的原因。
我还附上了它抛出的错误代码:
cleartool ls -recurse -vob_only -visible -short | xargs cleartool mklabel -replace -follow <label_name>
ERROR CODE: 256
我们将标签递归地应用于 VOB。
遵循 clearcase 命令失败,进而标记整个 vob 的过程失败。
老实说,我不知道这个命令中每个单词的含义。
您能否解释一下它的作用,以便我弄清楚标签过程失败的原因。
我还附上了它抛出的错误代码:
cleartool ls -recurse -vob_only -visible -short | xargs cleartool mklabel -replace -follow <label_name>
ERROR CODE: 256
cleartool mklabel
应用于由 返回的每个元素cleartool ls
,将列表限制为 VOB 存储中的对象,并且对操作系统列表命令可见。
但是,a cleartool mklabel -replace
(如果找到则移动现有标签)意味着您必须有权修改该标签,或者是元素所有者。
mklabel
在 xargs 管道中使用它之前,首先在单个文件上单独尝试该命令。
也试试我之前提出的另一种语法:
# 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 中的元素。
通常,此消息链接到锁定的全局类型或锁定在 vob1 和 2 中的 lbtype。
Unix 上的 A cleartool lslock lbtype:LABELNAME@\vob1
(或@/vobs/vob1
)以及 acleartool descr -l lbtype:LABELNAME@\vob1
可以帮助查看问题。