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/02/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 簽出檔案,但不會建立包含其資料的可編輯檔案
分支 指定要將檔案檢出的分支
版本 允許檢出除 /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 使用。文字 開發版本 1 會新增為註解。

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

CCMklabel

說明

執行 cleartool mklabel 指令至 ClearCase 的工作。

參數

屬性 必要
typename 標籤類型的名稱
viewpath 指令將運作的 ClearCase 檢視檔案或目錄路徑
replace 取代同一分支上同類型的標籤
recurse 處理 viewpath 下的每個子目錄
版本 識別要附加標籤的特定版本
vob VOB 的名稱
comment 指定註解 否;只能使用這兩個選項之一
commentfile 指定包含註解的檔案
failonerr 如果指令失敗,則擲回例外。
自 Ant 1.6.1 起
否;預設為 true

範例

main 分支下,對 c:/views/viewdir/afile 檔案執行 ClearCase mklabel,版本為 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 中的 Integration 檢視執行 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 下的每個子目錄
版本 識別要附加屬性的特定版本
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"/>