2008-08-28 33 views

回答

23

當心:ClearCase是文件爲中心的,而不是倉庫中心(如SVN或CVS)。

這意味着它很少是一個很好的解決方案檢出的所有文件(也可以是相當長與ClearCase;))

話雖這麼說,這個問題是完全合法的,我想指出的另一種方式:

在 '指定文件夾' 打開cleartool會話:

c:\MyFolder> cleartool 
cleartool> co -c "Reason for massive checkout" .../* 

的伎倆了。但隨着AKU的答案,但它確實結賬一切:文件和目錄...你可能最不需要結帳目錄!

cleartool find somedir -type f -exec "cleartool checkout -c \"Reason for massive checkout\" \"%CLEARCASE_PN%\"" 

只會籤文件...

現在的問題是要籤的是改變了一切。這是有問題的,因爲經常並非所有的都已更改,並且CleaCase將在嘗試檢入相同文件時觸發錯誤消息。這意味着你將需要2個命令:

ct lsco -r -cvi -fmt "ci -nc \"%n\"\n" | ct 
ct lsco -r -cvi -fmt "unco -rm %n\n" | ct 

(與「ct是」 cleartool:Windows上的「類型」 doskey ct=cleartool $*「來設置別名)

注意ct ci -nc將簽入與用於評論結賬階段。
所以這是不是沒有註釋的檢入(如-nc選擇 - 或「無可奉告」 - 可以使相信)。

8
cleartool find somedir -exec "cleartool checkout -nc \"%CLEARCASE_PN%\"" 

也發表文章指出 「ClearCase: The ten best scripts」 可能會有所幫助

+0

如果您使用的是Linux,以$ CLEARCASE_PN – Peewhy 2010-08-25 14:08:21

+0

@Peewhy好點的替換%CLEARCASE_PN%。 `CLEARCASE_PN`(對於PathName)或`CLEARCASE_XPN`都是由明文腳本(例如`cleartool find`)設置的環境變量。 Windows語法(`%...%`)或Unix語法(`$ ...`)對它們有效。 – VonC 2010-08-26 16:51:38