我正在使用ClearCase编写脚本,我必须提供一个pvob名称。
我在视图(动态或快照)的上下文中,我有一个元素名称(例如<path>\filename.cpp
)或特定元素和文件版本(<path>\filename.cpp@@\main\versioname\2
)
我如何获得它的pvob? 好像我必须找出vob名称,然后找到它与pvob的链接?
谢谢
答案 0 :(得分:1)
vob元素和PVob(包含对UCM对象的引用)之间没有直接链接
您可以做的是,在元素的当前路径中:
cleartool lsstream -cview
这将为您提供视图流的名称,该视图附加到PVob 但是,您的元素可能是另一个pvob的组件的一部分。
另一种选择是列出所有pvobs的所有组件及其根目录,并检查具有与您的元素路径类似的根目录的组件。
注意:活动中还有另一个链接:cleartool descr -l yourElement
会显示活动(及其pvob)。
但同样,该pvob可能与您的元素所属的组件之一不同。
更直接的链接:转储你的元素
cleartool dump -l /path/to/your/element
[...]
derived objects:
hyperlinks to object:
arrow=1249731306
type=27209
hlink vob=90b77fed.efb24bb6.8312.8e:09:7f:84:65:a1
hlink obj=64856a02.8d9d4624.abae.09:94:b0:e7:9c:2e
from vob=90b77fed.efb24bb6.8312.8e:09:7f:84:65:a1 <=====
from obj=20b6c0e8.270e4354.91f5.02:5c:6f:ed:41:54
to vob=60efb222.0e034a34.aa4b.80:65:c3:9c:d4:ca <=====
to obj=eb7ec24a.510e4e03.8403.0b:e8:dd:3d:5c:db
您的元素与两个vob相关联:
你可以列出所有的vob,询问他们的oid:
ct descr -fmt "%On %[plevels]p" vob:\avob
您可以检查其oid是否与元素的某个超链接匹配。
注意:我使用%[plevels]p
,因为它仅在pvob上有效!