假设用户提出请求:
我无法传递表单流“spider_dev
用户也没有提到视图名。
如何获取pvob名称?
我们的ClearCase环境太大(大约300个VOB)。每一个VOB和检查都非常困难。

最佳答案

假设只提供了流名称"spider_dev"而没有其他内容。在羞辱开发人员没有帮助他之后,请考虑以下命令以循环遍历VOB并定位流(我没有在多站点中工作,因此ymmv也标记为Windows,因此需要转换为powershell/dosshell):
MY_STREAM=spider_dev # the stream you're looking for
获取所有VOB的列表:

VOB_LIST=$(cleartool lsvob| grep ucmvob| cut -c3-| awk '{print $1}')
# list all vobs, match ucmvob, chop the active indicator (*), print the value

在VOB中循环查找匹配的开发流:
MY_STREAM=spider_dev   # the stream you're looking for
for vob in ${VOB_LIST}; do
   for stream in $(cleartool lsproject -obs -fmt "%[dstreams]p\n" -inv ${vob}); do
      if [[ ${stream} == ${MY_STREAM} ]]; then
         echo  "!!! ${stream}@${vob}"
         break
      fi
   done
done

现在您知道流在哪里了,请查找传递状态:
cleartool deliver -status -stream ${stream}@${vob}
结果如下:
Deliver operation in progress on stream "stream:spider_dev@/vobs/my_pvob"
    Started by "username" on "2016-03-15T12:34:56Z"
    Using integration activity "deliver.activity".
    Using view "user_view".
    Activities will be delivered to the default target stream stream:spider_int@/vobs/my_pvob"
in project "project:spider@/vobs/my_pvob".

Baselines to be delivered:

当然,您可以根据需要将其包装成shell命令、函数、批处理脚本等。我们有大约250个vobs w/4000分支,并编写了许多小实用程序来帮助我们处理许多类似的问题,所以感觉你的痛苦。
最后,提醒用户下一次帮助会更及时,提供更多的细节,而在提供更少的细节时会花费更长的时间。

关于windows - 如何通过给定的clearcase流(Windows)获取pvob名称?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35937296/

10-10 17:26