我需要找到一个命令来从Clearcase获取活动视图名称,因此我可以询问用户是否要将其设置为默认路径。以下无效。除此之外,还有其他选择吗?
out, err = subprocess.Popen([r"cleartool", "xxx", "-xxxxx"],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE).communicate()
return out
最佳答案
cleartool pwv
仅会给您视图的名称。
获取路径:
cleartool pwv -root
G:\
可能意味着快照视图,因为默认情况下所有动态视图通常都默认安装(MVFS)在驱动器M:\
上(但它们也可以替换为驱动器号)。对于快照视图,不同于
C:\
的驱动器号表示快照视图的实际路径已为subst
(Windows命令)到驱动器号,以缩短其路径。参见“ To use the
subst
command to access snapshot views (Windows)”使用subst命令将快照视图根目录分配给驱动器号比将快照视图作为共享目录提供更好的性能
因此,如果您在
G:\norbt5_ed_hil_dev
上并且想要在cleartool pwv
之后的完整路径,则可以:cleartool pwv -root
如果仅返回
G:\
,则需要调用命令subst
以查看已分配G:\
的完整路径。subst
或者,在python中(如in the example):
os.system('subst')
并解析结果。
注意:如“ Python and ClearCase
setview
”中所述,pwv
在Unix上以setview
开头的动态视图中不起作用(在Windows中setview
不存在),因为它创建了一个子进程。如果您在使用动态视图的Unix上,请不要使用
setview
(如illustrated here)。始终使用
cleartool startview <view_tag>
,然后使用动态视图的完整路径:/view/AViewName/vobs/aVob/...
然后
cleartool pwv -root
将返回/view/AViewName
。在Windows上,如果在动态视图中使用
cleartool pwv
,则cleartool pwv -short
返回的视图名称就足够了:Windows上动态视图的根文件夹的路径始终为:
m:\view_tag
即使视图已
subst
到另一个驱动器号。您不需要
-root
。关于python - 在Clearcase中获取当前的工作 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24267665/