的問題是:
實際上有什麼目錄:
- 分支
BR_PHASE2
一個版本?
- 標籤爲
LBL_MS_PHASE2_04-NOV-2010
的版本?
如果你只分支/標記/myVob/myDirectory
下的所有文件,然後將目錄/myVob
本身不會永遠不會被支/標記。
這意味着以下配置規範將無法選擇任何版本/myVob
,使所有的其他規則的任何文件/myVob
無用下:
直到ClearCase是能夠在真皮休閒選擇的/myVob
一個有效版本,它將無法爲/myVob
下的任何文件選擇任何版本。
element * CHECKEDOUT
element * /main/BR_PHASE2/LATEST
你應該總是結束您的配置規格與 「配置停止規則」,如:
element * /main/LATEST
或至少:
element /myVob /main/LATEST
添加這些的一個在結束您的配置規範,並且該視圖應按預期工作。
ClearCase的配置規範機制的組成爲基礎的一個:更多地瞭解它,請參閱SO回答「Flexible vs static branching (GIT vs Clearcase/Accurev)」。
的OP補充說:
你提到總是結束CS有:element * /main/LATEST
,
不一定:
如果你想確保只使用右分支/標籤查看/ myVob/myDir下的文件,您可以使用上面提到的:
element /myVob /main/LATEST
該規則僅適用於/myVob
(不屬於/myVob
下的任何內容)。
這允許ClearCase通過/myVob
(因爲它至少可以爲它選擇一個有效版本)並開始將其他選擇規則應用於子目錄。
但如果我想檢查出僅來自分支BR_PHASE2
的文件,不會創建一個錯誤。我在說,當我用/ main/LATEST結束它並簽出並簽入文件時,它會在主分支中更新。我該怎麼辦呢?
這取決於你所使用的配置規格:
element * CHECKEDOUT
element * /main/BR_PHASE2/LATEST
element * /main/LATEST
確實會在主枝
element * CHECKEDOUT
element * .../BR_PHASE2/LATEST
element * /main/LBL_MS_PHASE2_04-NOV-2010 -mkbranch BR_PHASE2
element * /main/LATEST
不會,因爲第三規則將首先應用創造新的版本,如果元素已被標記爲LBL_MS_PHASE2_04-NOV-2010
。
我檢出了標籤'LBL_MS_PHASE2_04-NOV-2010'中的一些文件到分支BR_PHASE2。我得到了確認文件已成功檢入分支。但是當我嘗試將配置設置爲: element * CHECKEDout element */main/BR_PHASE2/LATEST,我收到錯誤。此外,我無法打開我的VOB和任何文件夾結構在新創建的分支下。它說當我嘗試訪問它時找不到文件夾或目錄,但'ls'列出了目錄結構,並且所有文件夾似乎都存在。任何解決這個問題的方法? – Madan 2010-11-22 14:10:52
在我看來,配置規範沒有向你顯示目錄樹,因爲你只是沒有看到你的配置規範。你應該糾正你的最後一個cs,看到更新的答案。 – 2010-11-22 14:22:50
Thnx爲最新的代碼。似乎工作,但問題是我無法理解config規格如何選擇哪個分支來檢出文件,並且既然您已經從BR_PHASE2提供了main和latest的標籤,那麼目前可見的目錄結構是來自main或從分支? – Madan 2010-11-22 15:00:08