Clearcase 在Clear Case配置规范中访问环境变量

Clearcase 在Clear Case配置规范中访问环境变量,clearcase,config,Clearcase,Config,是否可以在clearcase中访问配置规范中的环境变量 我有以下代码: element /folder/... /main/current_branch/LATEST 我希望设置我的开发,这样我就可以通过简单地设置一些环境变量来更新分支。我希望这样的事情能起作用,可能吗 element /folder/... /main/$current_branch/LATEST 其中$current\u branch应返回该环境变量中设置的当前分支。否,我从未见过基于环境变量的配置规范。 我看了看,没有

是否可以在clearcase中访问配置规范中的环境变量

我有以下代码:

element /folder/... /main/current_branch/LATEST
我希望设置我的开发,这样我就可以通过简单地设置一些环境变量来更新分支。我希望这样的事情能起作用,可能吗

element /folder/... /main/$current_branch/LATEST

其中$current\u branch应返回该环境变量中设置的当前分支。

否,我从未见过基于环境变量的配置规范。
我看了看,没有人提到这种可能性

对于动态视图,我看到脚本基于环境变量使用动态修改配置规范(因为动态视图的刷新几乎是即时的)

注意:不要忘记您的
当前分支
可能并不总是直接从
/main
派生。我更喜欢使用以下语法:

 element /folder/... .../my_branch/LATEST

为了选择my_分支,而不依赖于它的直接“父”分支(即使在基本ClearCase中,)。

否,我从未见过基于环境变量的配置规范。
我看了看,没有人提到这种可能性

对于动态视图,我看到脚本基于环境变量使用动态修改配置规范(因为动态视图的刷新几乎是即时的)

注意:不要忘记您的
当前分支
可能并不总是直接从
/main
派生。我更喜欢使用以下语法:

 element /folder/... .../my_branch/LATEST

为了选择my_分支,而不依赖其直接的“父”分支(即使在基本ClearCase中是),这是不可能的

我处理这个问题的方法是(自动)填写模板。但我也使用不同的观点;视图是一次性的,我会定期重建视图(每周,每两周,如果我需要确保构建的清洁度,有时一天几次)

我会向你们展示我的脚本,但它们有很多,它们彼此之间以及与我们的工作环境之间有着相当复杂的交织(许多产品的许多主要版本都有多个但相互重叠的VOB,配置规范的某些部分由CM提供,并有自定义的序言来确定我在做什么)。我们已经使用ClearCase大约18年了

最终结果是错误修复分支的配置规范,如下所示:

# @(#)$Id:243260.jleffler.toru.cs,v 1.1 2011/08/30 15:23:02 jleffler Exp $
#
# Config Spec for Bug 243260 - Blah, blah, blah, blah

element * CHECKEDOUT
element * .../TEMP.243260.jleffler/LATEST
mkbranch -override TEMP.243260.jleffler

#time 26-Jul-2009.00:00:00UTC-08:00

element /vobs/main_vob/...  /main/LATEST
element /vobs/other_vob/...        dist.1.00 -nocheckout

include /atria/cspecs/product/1.23/product-1.23.4
#include /atria/cspecs/product/1.16/product-1.16.8

element * /main/LATEST
注释掉的时间戳和捕获所有规则之间的位由CM提供。时间戳上方的位是分支的自定义位(TEMP.243260.jleffler-将其标识为临时分支、用于修复的错误以及谁在执行此工作)。该模板实际上列出了CM中大约10个不同的配置规范,我只是删除了那些不相关的配置规范。视图名称基于错误号、我的登录名以及创建它的机器(
toru
)。我伪装了其余的大部分,但它是基于我今天早些时候创建的一个bug cspec。我的
bug.view
脚本获取了bug编号、描述、视图工作存储的路径以及我需要创建分支的VOB,并自动设置了所有内容。(我仍然很古老,可以使用RCS来控制我的CSPES。)


我的一些观点持续了很长时间(按名称)例如,当前版本参考视图将在支持该版本的5年以上的时间内继续存在。在此期间,它将被重建数百次,但名称保持不变:
prod-1.23-ref.jleffler.toru
。因此,该版本的cspec将随着时间的推移而变化,因为需要不同的工作,但基本cspec是三个lines-签出,包括标准CM提供的配置文件和最新版本。

AFAIK,这是不可能的

我处理这个问题的方法是使用我(自动)填写的模板。但我也使用单独的视图;视图是一次性的,我会定期重建视图(每周,每两周,如果我需要确保构建的清洁度,有时一天几次)

我会向你们展示我的脚本,但它们有很多,它们彼此之间以及与我们的工作环境之间有着相当复杂的交织(许多产品的许多主要版本都有多个但相互重叠的VOB,配置规范的某些部分由CM提供,并有自定义的序言来确定我在做什么)。我们已经使用ClearCase大约18年了

最终结果是错误修复分支的配置规范,如下所示:

# @(#)$Id:243260.jleffler.toru.cs,v 1.1 2011/08/30 15:23:02 jleffler Exp $
#
# Config Spec for Bug 243260 - Blah, blah, blah, blah

element * CHECKEDOUT
element * .../TEMP.243260.jleffler/LATEST
mkbranch -override TEMP.243260.jleffler

#time 26-Jul-2009.00:00:00UTC-08:00

element /vobs/main_vob/...  /main/LATEST
element /vobs/other_vob/...        dist.1.00 -nocheckout

include /atria/cspecs/product/1.23/product-1.23.4
#include /atria/cspecs/product/1.16/product-1.16.8

element * /main/LATEST
注释掉的时间戳和捕获所有规则之间的位由CM提供。时间戳上方的位是分支的自定义位(TEMP.243260.jleffler-将其标识为临时分支、用于修复的错误以及谁在执行此工作)。该模板实际上列出了CM中大约10个不同的配置规范,我只是删除了那些不相关的配置规范。视图名称基于错误号、我的登录名以及创建它的机器(
toru
)。我伪装了其余的大部分,但它是基于我今天早些时候创建的一个bug cspec。我的
bug.view
脚本获取了bug编号、描述、视图工作存储的路径以及我需要创建分支的VOB,并自动设置了所有内容。(我仍然很古板,可以使用RCS来控制我的CSPEC。)

我的一些观点持续了很长时间(按名称)例如,当前版本参考视图将在支持该版本的5年以上的时间内继续存在。在此期间,它将被重建数百次,但名称保持不变:
prod-1.23-ref.jleffler.toru
。因此,该版本的cspec将随着时间的推移而变化,因为需要不同的工作,但基本cspec是三个lines-签出,包括标准CM提供的配置fi