2011-05-03 134 views
2

我在源代碼管理中做了一堆錯誤的檢查。 開始修改之前我用一個標籤標記了所有元素版本。ClearCase:從當前版本恢復爲標籤版本

我該如何告訴clearcase進行合併搜索,並提出比標記文件更新的所有文件,以便我可以回滾更改?

當我做一個簡單的合併沒有出現

回答

1

一個簡單的辦法就是建立一個新的配置規格與唱片公司爲起點,和mkbranch規則(創造,而不是對工作的一個新的分支當前之一)。

這樣,您只會看到並修改錯誤簽入前使用過標籤的文件。
同樣的想法可以用UCM應用(使用錯誤的簽入前剛剛做了基線的子數據流)

話雖這麼說,對於相對少量文件恢復的基礎上,手動解決方案find query是可能的(窗戶語法):

cleartool find -all -element "{lbtype_sub(REL1)" -exec "cleartool find \"%CLEARCASE_PN%\" -version "{created_since(label-date) && brtype(label_branch) }" -print 

的想法是第一個查詢合併找到的所有元素(文件或目錄),它有一個標籤,它們的版本當中,然後使用該元素(通過\"%CLEARCASE_PN%\"引用)來查找是否存在自標籤日期以及右分支中創建的任何版本(執行錯誤的通信的那個版本)它的)。

這與negative or subtractive merge相結合可以使過程自動化。

+0

謝謝,我實際上找到了有關減法合併的文章,但對於我來說,我無法弄清楚當源代碼是標籤並且目標是最新的所有例子時,如何使它工作,適用於單個文件 – Joel 2011-05-03 15:31:27

+0

@Joel:您可以通過'cset.pl'腳本(http://www.ibm.com/developerworks/rational/library/05/0927_bellagio/)獲得一些想法,該腳本執行類似的操作UCM活動中的版本 – VonC 2011-05-03 15:38:28