发新话题
打印

[求助] 如何查找一个branch是基于哪个label的( 此文章被查看:1026次,被回复:23篇!! )

我以前也遇到过这样的问题,没有找到好的解决办法,后来就用lable作为分支名的一部分,这样以后就知道这个分支是基于哪个标签拉出来的了

© 本文为 gsjxuer 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 10# 的帖子

我试了这个,还是不行。报错了。信息如下:

cleartool> find .  -version 'brtype(d330_main_int)' -exec 'cleartool describe $CLEARCASE_XPN'
cleartool: Error: Unable to access "$CLEARCASE_XPN": No such file or directory.

© 本文为 pengpeng_py 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
灵魂在高处,生活在低处.

TOP

在windows下面使用环境变量%CLEARCASE_XPN,在unix环境下使用环境变量$CLEARCASE_XPN

© 本文为 anthelion 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

Windows下应该是 %CLEARCASE_XPN%

© 本文为 bigjames 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
用CCRC取代Native Client吧,至少在下一个补丁出来之前。

TOP

回复 14# 的帖子

谢谢bigjames。这命令终于不报错了。也让我明白windows和unix下的区别。
但是我想要的是基于哪个label。是lstype,而不是branch的节点详情。
谁再能给解释一下。谢谢了

cleartool> find .  -version 'brtype(d330_main_int)' -exec 'cleartool describe %CLEARCASE_XPN%'
version ".\df\psxmmi\modules\ed\incl\ed_version.hec@@\main\A\B\C\0"
  created 24-??-08.12:19:11 by sw-build3.Domain Users@sw-build3
  Element Protection:
    User : FLYFOT\ccvob1 : r-x
    Group: FLYFOT\sw-dev : r-x
    Other:          : ---
  element type: text_file
  predecessor version: \main\A\B\86
cleartool>

[ 本帖最后由 pengpeng_py 于 2008-4-28 16:53 编辑 ]

© 本文为 pengpeng_py 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
灵魂在高处,生活在低处.

TOP

然后再describe一下\df\psxmmi\modules\ed\incl\ed_version.hec@@\main\A\B\86就可以得到label的列表了

© 本文为 i子休 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
ed

TOP

[quote]原帖由 pengpeng_py 于 2008-4-28 16:52 发表
谢谢bigjames。这命令终于不报错了。也让我明白windows和unix下的区别。
但是我想要的是基于哪个label。是lstype,而不是branch的节点详情。
谁再能给解释一下。谢谢了

cleartool> find .  -version 'brtype(d330_main_int)' -exec 'cleartool describe %CLEARCASE_XPN%'
version ".\df\psxmmi\modules\ed\incl\ed_version.hec@@\main\A\B\C\0"
  created 24-??-08.12:19:11 by sw-build3.Domain Users@sw-build3
  Element Protection:
    User : FLYFOT\ccvob1 : r-x
    Group: FLYFOT\sw-dev : r-x
    Other:          : ---
  element type: text_file
  predecessor version: \main\A\B\86
cleartool>


对此我有一些疑问,假如您的分支"d330_main_int"下有1000个version,用上面的命令find出来的version,您怎么来确定哪一个是想要的结果?
您的命令比较适用于该分支下只有1个version的情况。

我的思路:
要检查d330_main_int这个分支是基于哪个Label拉出来的,只需要找出该分支下的第一个version的之前版本,然后再describe一下这个版本,就可以得到label的列表了。
我把您的命令做了一下改进:
$ cleartool find . -ver 'brtype(d330_main_int)' -exec 'cleartool desc -fmt "%[version_predecessor]p\n" %CLEARCASE_XPN%' | sed -n '1p'
(注释:sed -n '1p'是只打印第一行的意思。)

此命令将find出分支d330_main_int下第一个VERSION的之前版本。

[ 本帖最后由 cn_chenfeng 于 2008-5-3 17:30 编辑 ]

© 本文为 cn_chenfeng 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

引用:
原帖由 cn_chenfeng 于 2008-5-3 17:04 发表

我把您的命令做了一下改进:
$ cleartool find . -ver 'brtype(d330_main_int)' -exec 'cleartool desc -fmt "%[version_predecessor]p\n" %CLEARCASE_XPN%' | sed -n '1p'
(注释:sed -n '1p'是只打印第一行的意思。)
Windows上一般没有sed的吧

© 本文为 i子休 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
ed

TOP

引用:
原帖由 i子休 于 2008-5-4 09:06 发表

Windows上一般没有sed的吧
我们公司的ClearCase环境也是WINDOWS平台,我在上面安装了cygwin,感觉管理起来方便多了。

© 本文为 cn_chenfeng 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 19# 的帖子

我的笨办法,就是看版本树......

© 本文为 香草天空 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

发新话题