2009-06-11 95 views
1

我想在ClearCase Remote Client中分支一個文件。 我有分支設置和配置規範更新來處理分支。 但我找不到選項,並且Google搜索功能幫助不大。用clearcase遠程客戶端分支

+0

有了更多的信息,比如擁有你的分支名稱和配置規範,會更容易一些。 – 2009-06-18 18:28:20

回答

4

我明白你的問題的方式,這聽起來像你想以某種方式選擇一個ClearCase RC菜單(S)的命令,並有分支明確創建(?)

ClearCase的沒有明確的「生成分行這個文件「命令;在這種情況下你會想要「Checkout」命令。分支是間接的,並且是在視圖中檢出文件的版本的結果,該視圖具有配置規範以及其中的'-mkbranch'操作。即以下配置規範將創建dev_1.0_branch一次我檢查出來(對於任何和所有VOB和文件):

element * CHECKEDOUT 
element * .../dev_1.0_branch/LATEST 
element * /main/LATEST -mkbranch dev_1.0_branch 

的第一行是訪問量標準中,你在做開發的,2號線將保證我看到任何具有dev_1.0_branch的文件(對於checkout + mkbranch特別重要,按預期工作:-),並且第3行將選擇沒有dev_1.0_branch的任何文件的最新版本將創建分支if(和只有當)由該規則選擇的文件版本被檢出。

請讓我知道,如果任何上述聽起來希臘人,尤其是任何配置規範的規則。在與ClearCase合作很長一段時間後,我假設並使用了很多術語和概念,就好像它是常識一樣:-P。

需要注意的一件事:如果您簽出文件,然後立即取消選中該文件,您將在該文件上留下一個空分支(即在上面您將擁有一個版本如foo.c @ @/main/dev_1.0_branch/0,但是沒有/ main/dev_1.0_branch/1版本)。很多網站更願意保持版本樹清潔,清除空枝(一個可以在this IBM Rational Technical article找到)

只是要清楚,我熟悉的ClearCase基地& ClearCase的多點會議,但與遠程客戶端還沒有工作。

--- 2009-Jun-29更新 爲了迴應Paul的評論,如果您想選擇哪些文件被分支,您可以修改「*」以更具體。例如,如果你想在FOODEV VOB只分支foo.c的,但留下的一切對其他主要:

UNIX配置規範:

element * CHECKOUT 
element * .../my_dev_branch/LATEST 
element /vobs/FOODEV/src/foo.c -mkbranch my_dev_branch 
element * /main/LATEST 

(適用於Windows,你會希望使用Windows約定。I \ FOODEV \ src \ foo.c)。

您也可以選擇一個目錄,該目錄下的所有元素(再次UNIX配置規範):

element * CHECKOUT 
element * .../my_dev_branch/LATEST 
element /vobs/FOODEV/src/mycomponent/... -mkbranch my_dev_branch 
element * /main/LATEST 

的配置_規範(從Windows或UNIX命令行cleartool人config_spec)主頁在「模式」部分提供了有關如何編寫元素/版本選擇器(第2列)的體面指導。

您可以使用配置規格做很多複雜的版本選擇。請讓我知道你是否想要更多的細節或細節。

+0

這是有道理的。但是,假設我只想分支一個或兩個我查看的文件?例如,我的一些工作是在main/for某些文件上完成的,其他工作在我的.../paulnath/branch上。 – 2009-06-18 20:41:40

0

下面是一個配置規範,我用它來修復一個特定的bug,並更名爲掩飾某些內疚。

element * CHECKEDOUT 

element * .../TEMP.bugnum171238.jleffler/LATEST 
mkbranch -override TEMP.bugnum171238.jleffler 

include /clearcase/cspecs/project/version-1.23.45 

要創建分支,在每個VOB中,我使用的命令:

ct mkbrtype -c 'Branch for bug 171238' [email protected]/vobs/project 

以前,我們使用配置規格與附加到各個element-mkbranch規則。