ccm baseline -c|-create [(-p|-project project_spec)...]
[(-bl|-baseline baseline_spec)...]
[(-pg|-project_grouping project_grouping_spec)...]
[-rehearse] [-r|-release release_spec] [-purpose purpose]
[-d|-desc|-description description]
[-vt|-version_template version_template] [-b|-build build]
[-s|-state state] ([-subprojects] | [-all_subprojects] |
[-no_subprojects])
([-cpu|-check_project_update] | [-nocpu|-nocheck_project_update])
[baseline_name]
–subprojects、-no_subprojects 和 –all_subprojects 的使用会影响另外添加的子项目。
缺省情况下,如果使用 –baseline 而不使用 –project,那么将不包括子项目。但是,如果同时使用 –project 和 –baseline,那么 –project 暗示的 –subprojects 默认值将覆盖 –baseline 暗示的 –no_subprojects 默认值。
如果不指定 baseline_name,那么将自动向基线分配唯一名称。此缺省名称的格式为 yyyymmdd。如果需要,缺省名称的后面将紧跟下划线和递增数字以使该名称独一无二。例如,在 2002 年 4 月 1 日创建的第一个基线的缺省名称为 20020401。在同一天创建的第二个此类基线的缺省名称为 20020401_1。
如果未指定 -project_grouping 或 -baseline,那么缺省值为
-subprojects。
如果指定了 -project_grouping 或 -baseline,那么缺省值为 -no_sub_projects。
–subprojects、-no_subprojects 和 –all_subprojects 选项影响将随项目分组集一起添加的子项目。
purpose 是用于指定项目用途的设置(例如,隔离开发、集成测试和系统测试)。
如果指定 -purpose,那么还必须指定 -release。
如果发现任何版本冲突,将显示警告,列出所有冲突的产品和项目版本。发生冲突的原因是生成的版本存在于新基线中,或者生成的版本不是合法的版本字符串。
如果指定 -release,那么还必须指定 -purpose。
创建已发布状态的基线相当于创建 published_baseline 状态的基线并将其发布。
此选项适用于使用 -project、-project_grouping 和
-baseline 选项添加的项目。如果未指定 -project_grouping 或
-baseline,那么此为缺省行为。如果指定了 -project_grouping 或 -baseline,那么缺省值为 -no_subprojects。
version_template 是带有可选关键字的任何字符串,格式为 %keyword 或 %{keyword}。关键字可以是任何 Rational Synergy 属性或内置关键字。
当展开某个属性时,将使用所检查的构建管理项目或产品中的相应属性值。如果未找到指定关键字名称的属性或内置关键字,那么空字符串将替换该关键字。
如果基线中任何项目或产品的 version_template 实例包含版本字符串不允许的字符,那么这些字符将替换为缺省版本字符串替换字符。此设置在服务器 ccm.ini 文件中通过 baseline_template_repl_char 选项进行指定。 缺省字符是下划线 (_)。例如,如果 %platform 属于某个版本模板,并且构建管理项目具有平台 SPARC-solaris,那么版本字符串将包含字符串 SPARC_solaris。或者,如果 %release 属于某个产品版本模板,并且必备产品的发布标识为 CM/6.5,那么版本字符串将包含字符串 CM_6.5。
如果基线中任何项目或产品的 version_template 实例已用于该项目或产品的其他版本,那么版本将通过附加下划线 (_) 和使版本唯一的第一个整数(从 1 开始)来使版本独一无二。如果这导致版本字符串太长,那么将对该项目或产品使用基于当前日期的版本,并显示警告。
如果未指定 –version_template,将使用缺省模板。有关更多信息,请参阅 baseline 命令中的“版本模板规范”。
如果项目的工作区模板包括版本,那么将更新工作区。如果由于工作区不可见且未使用 -skip_nonvisible_projects 而导致工作区无法更新,那么操作将继续并报告所有错误。如果工作区可见,但由于其他原因(例如,缺少适当的文件许可权或缺少磁盘空间)而无法更新,那么操作将继续并报告所有故障。
ccm baseline -c Build_1234_int -d "Integration build 1234" -r 2.0 -purpose "集成测试" -project proj1-sqa_3 -subprojects