Apache Ant ClearCase 任务

作者
Curtis White (cwhite at aracnet dot com),
Sean P. Kane (spkane at genomatica dot com),
Rob Anderson (Anderson.Rob at vectorscm dot com), 以及
Sean Egan (sean at cm-logic dot com)

版本 1.6—2003 年 2 月 25 日

ClearCase 支持

目录


简介

Apache Ant 提供了一些可选任务,用于与 ClearCase 交互。这些任务对应于使用 cleartool 程序的各种 ClearCase 命令。目前 Ant 可用的任务仅对应于少数重要的 ClearCase 命令。

可以通过从 ClearCase 类派生并添加特定于该 ClearCase 命令的功能来轻松添加更多任务。

重要提示:这些任务都需要在命令行上使用 cleartool。如果任务因 IOException 失败,尤其是 Windows 上的 error=2,则问题出在您这边。


CCCheckin

描述

执行 cleartool checkin 命令到 ClearCase 的任务。

参数

属性 必需
viewpath 命令将对其操作的 ClearCase 视图文件或目录的路径
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
nowarn 抑制警告消息
preservetime 保留修改时间
keepcopy 保留带有 .keep 扩展名的文件的副本
identical 即使文件与原始文件相同,也允许将其检入
failonerr 如果命令失败,则抛出异常 否;默认值为 true

示例

对文件 c:/views/viewdir/afile 执行 ClearCase checkin。来自文件 acomment.txt 的注释文本将作为注释添加到 ClearCase 中。所有警告消息都将被抑制。即使文件与原始文件相同,也会将其检入。

<cccheckin viewpath="c:/views/viewdir/afile"
           commentfile="acomment.txt"
           nowarn="true"
           identical="true"/>

CCCheckout

描述

执行 cleartool checkout 命令到 ClearCase 的任务。

参数

属性 必需
viewpath 命令将对其操作的 ClearCase 视图文件或目录的路径
reserved 指定是否将文件检出为保留
out 在不同的文件名下创建可写文件
nodata 检出文件,但不创建包含其数据的可编辑文件
branch 指定要检出文件的分支
version 允许检出除 /main/LATEST 之外的版本(或由配置规范选择的任何版本)
nowarn 抑制警告消息
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
notco 如果文件已检出到当前视图,则失败。设置为 false 以忽略它。
自 Ant 1.6.1 起
否;默认值为 true
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

对文件 c:/views/viewdir/afile 执行 ClearCase checkout。它在名为 abranch 的分支上检出为保留。所有警告消息都将被抑制。一个 "Some comment text" 将作为注释添加到 ClearCase 中。

<cccheckout viewpath="c:/views/viewdir/afile"
            reserved="true"
            branch="abranch"
            nowarn="true"
            comment="Some comment text"/>

CCUnCheckout

描述

执行 cleartool uncheckout 命令到 ClearCase 的任务。

参数

属性 必需
viewpath 命令将对其操作的 ClearCase 视图文件或目录的路径
keepcopy 指定是否保留带有 .keep 扩展名的文件的副本。
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

对文件 c:/views/viewdir/afile 执行 ClearCase uncheckout。保留一个名为 c:/views/viewdir/afile.keep 的文件的副本。

<ccuncheckout viewpath="c:/views/viewdir/afile" keepcopy="true"/>

CCUpdate

描述

执行 cleartool update 命令到 ClearCase 的任务。

参数

属性 必需
viewpath 命令将对其操作的 ClearCase 快照视图文件或目录的路径
graphical 在更新期间显示图形对话框
log 指定 ClearCase 要写入的日志文件
overwrite 指定是否覆盖被劫持的文件
rename 指定被劫持的文件应使用 .keep 扩展名重命名
currenttime 指定修改时间应写入为当前时间。与 preservetime 互斥。
preservetime 指定修改时间应从 VOB 时间保留。与 currenttime 互斥。
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

对快照视图目录 c:/views/viewdir 执行 ClearCase update。将显示图形对话框。输出将记录到 log.log 中,并且它将覆盖任何被劫持的文件。修改时间将设置为当前时间。

<ccupdate viewpath="c:/views/viewdir"
          graphical="false"
          log="log.log"
          overwrite="true"
          currenttime="true"
          rename="false"/>

CCMklbtype

描述

执行 cleartool mklbtype 命令到 ClearCase 的任务。

参数

属性 必需
typename 要创建的标签类型的名称
vob VOB 的名称
replace 替换相同类型的现有标签定义
global 创建一个对 VOB 或使用此 VOB 的 VOB 全局的标签类型。 否;两个中只能使用一个,默认 ordinary=true
ordinary 创建一个只能在当前 VOB 中使用的标签类型。
pbranch 允许在给定元素的版本树中的每个分支上使用一次标签类型
shared 设置 ClearCase 检查所有权的方式。有关详细信息,请参阅 ClearCase 文档
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

执行 ClearCase mklbtype 以创建一个名为 VERSION_1 的标签类型。它被创建为普通,因此它仅对当前 VOB 可用。文本 Development version 1 将作为注释添加。

<ccmklbtype typename="VERSION_1"
            ordinary="true"
            comment="Development version 1"/>

CCMklabel

描述

执行 cleartool mklabel 命令到 ClearCase 的任务。

参数

属性 必需
typename 标签类型的名称
viewpath 命令将对其操作的 ClearCase 视图文件或目录的路径
replace 替换相同分支上相同类型的标签
recurse 处理 viewpath 下的每个子目录
version 标识要附加标签的特定版本
vob VOB 的名称
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

对文件 c:/views/viewdir/afile 执行 ClearCase mklabel,在 main 分支上为版本 2 (\main\2)。文本 "Some comment text" 将作为注释添加。它将递归所有子目录。

<ccmklabel viewpath="c:/views/viewdir/afile"
           comment="Some comment text"
           recurse="true"
           version="\main\2"
           typename="VERSION_1"/>

CCRmtype

描述

执行 cleartool rmtype 命令到 ClearCase 的任务。

参数

属性 必需
typekind 要创建的类型的种类。有效类型为
种类 描述
attype 属性类型
brtype 分支类型
eltype 元素类型
hltype 超链接类型
lbtype 标签类型
trtype 触发器类型
typename 要删除的类型的名称
ignore 仅与触发器类型一起使用。即使预操作触发器会阻止删除触发器类型,也会强制删除触发器类型
rmall 删除所有类型的实例以及类型对象本身
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
failonerr 如果命令失败,则抛出异常。自 Ant 1.6.1 起 否;默认值为 true

示例

执行 ClearCase rmtype 以删除名为 VERSION_1 的标签类型 (lbtype)。来自文件 acomment.txt 的注释文本将作为注释添加。所有类型的实例都将被删除,包括类型对象本身。

<ccrmtype typekind="lbtype"
          typename="VERSION_1"
          commentfile="acomment.txt"
          rmall="true"/>

CCLock

描述

执行 cleartool lock 命令到 ClearCase 的任务。

参数

属性 必需
replace 指定替换现有锁
nusers 指定仍然可以修改对象的使用者
obsolete 指定对象应被标记为已过时
comment 指定如何填充注释字段
pname 指定要锁定的对象路径名。
objselect 已过时。请改用 objsel
objsel 指定要锁定的对象。
自 Ant 1.6.1 起
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

对对象 stream:Application_Integration@\MyProject_PVOB 执行 ClearCase lock

<cclock objsel="stream:Application_Integration@\MyProject_PVOB"/>

CCUnlock

描述

执行 cleartool unlock 命令到 ClearCase 的任务。

参数

属性 必需
comment 指定如何填充注释字段
pname 指定要解锁的对象路径名。
objselect 已过时。请改用 objsel
objsel 指定要解锁的对象。
自 Ant 1.6.1 起
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

对对象 stream:Application_Integration@\MyProject_PVOB 执行 ClearCase unlock

<ccunlock objsel="stream:Application_Integration@\MyProject_PVOB"/>

CCMkbl

描述

执行 cleartool mkbl 命令到 ClearCase 的任务。

参数

属性 必需
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
baselinerootname 指定要与基线关联的名称。
nowarn 抑制警告消息
identical 即使基线与之前的基线相同,也允许创建基线。
full 创建完整的基线。
nlabel 允许创建基线而不使用标签。
failonerr 如果命令失败,则抛出异常。
自 Ant 1.6.1 起
否;默认值为 true

示例

即使它与之前的基线相同,也会对 v:\ApplicationCC 上的集成视图执行 ClearCase mkbl。新的基线将是增量的,名为 Application_Baseline_AUTO

<ccmkbl baselinerootname="Application_Baseline_AUTO"
        identical="yes"
        full="no"
        viewpath="v:\ApplicationCC"/>

CCMkattr

自 Ant 1.6.1 起

描述

执行 cleartool mkattr 命令到 ClearCase 的任务。

参数

属性 必需
viewpath 命令将对其操作的 ClearCase 视图文件或目录的路径
replace 如果属性已存在,则替换属性的值
recurse 处理 viewpath 下的每个子目录
version 标识要附加属性的特定版本
typename 属性类型的名称
typevalue 要附加到属性类型的值
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
failonerr 如果命令失败,则抛出异常。 否;默认值为 true

示例

对文件 c:/views/viewdir/afile 执行 ClearCase mkattr,并将属性 BugFix 与值为 34445 的属性附加到它。

<ccmkattr viewpath="c:/views/viewdir/afile"
          typename="BugFix"
          typevalue="34445"/>

CCMkdir

自 Ant 1.6.1 起

描述

执行 cleartool mkdir 命令到 ClearCase 的任务。

参数

属性 必需
viewpath 命令将对其操作的 ClearCase 视图目录的路径
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
nocheckout 在创建元素后不要检出
failonerr 如果命令失败,则抛出异常。 否;默认值为 true

示例

对目录 c:/views/viewdir/adir 执行 ClearCase mkdir,并且不要自动将其检出。

<ccmkdir viewpath="c:/views/viewdir/adir"
         nocheckout="true"
         comment="Some comment text"/>

CCMkelem

自 Ant 1.6.1 起

描述

执行 cleartool mkelem 命令到 ClearCase 的任务。

参数

属性 必需
viewpath 命令将对其操作的 ClearCase 视图文件或目录的路径
comment 指定注释 否;两个中只能使用一个
commentfile 指定包含注释的文件
nowarn 抑制警告消息
nocheckout 在创建元素后不要检出
checkin 在创建后检入元素
preservetime 保留修改时间(用于检入)
master 将主分支的所有权分配给当前站点
eltype 在创建元素期间使用的元素类型
failonerr 如果命令失败,则抛出异常。 否;默认值为 true

示例

对文件 c:/views/viewdir/afile 执行 ClearCase mkelem,元素类型为 text_file,在创建后检入文件。

<ccmkelem viewpath="c:/views/viewdir/afile"
          eltype="text_file"
          checkin="true"
          comment="Some comment text"/>