2016-06-21 63 views
2

我想在ClearCase中列出特定文件的所有標籤。基於在(how to find all the labels for a given file in clearcase)的接受答案中的最後一種方法,我想要使用cddir的組合。我只使用動態視圖,因爲我們有數千個版本,我猜這種方法比慢速的cleartool查詢要快得多(ClearCase在這裏速度很慢)。對於我只在Windows上工作的信息。通過擴展文件名訪問文件標籤作爲目錄

這裏所提到的方法:

cd m:/myView/path/to/[email protected]@ 
# list all files, not directories: the files are the labels 
dir /B /A-D 

不幸的是,方法並不對每個文件進行操作。奇怪的是,即使簽入文件中有標籤,標籤文件也不會出現在目錄中。標籤文件僅存在於分支文件夾中。

陌生人的事情是,以下作品:copy [email protected]@\labelname targetfile。甚至一個copy labelname targetname從目錄「文件名@@」內工作。我不明白。爲什麼不dir顯示這些文件?我嘗試了所有的屬性(如隱藏文件)等。

這是MVFS中的錯誤還是我錯過了什麼?正如我所說,它適用於許多文件,但不是所有文件。但我不知道這些文件有什麼不同。也許文件擴展名/類型?但是,這是否重要?

回答

1

我不明白。爲什麼dir不顯示這些文件?

由於dir是一個Windows命令,它會列出的Windows文件系統的文件,而不是MVFS (Multi-Version FileSystem)的,由dynamic view使用。

我不知道什麼是與這些文件的不同。也許文件擴展名/類型?

一切後,@@version-extended pathname(見man page),模擬由MVFS的動態視圖Windows文件。

但是,這件事呢?

如果您使用的是Windows命令(而不是cleartool查詢),則不應該這樣做,因爲這些擴展路徑應該是Windows直接可見的。
他們訪問copy [email protected]@\labelname targetfile),但也應該是可見

特別是(通過基於文件系統的Windows dir命令列出),爲Version labels in extended namespace

版本的標籤出現在擴展命名空間作爲硬鏈接(UNIX和Linux)或作爲附加文件(Windows)。

在Windows上,如果一個元素的\main\4版本標記爲RLS_1,對應於元素的主枝同時列出4RLS_1擴展命名空間的目錄:如果標籤類型是與創建

Z:\myvob\src> dir [email protected]@\main 
2006-11-10T17:34    1846 4 
... 
2006-11-10T17:34    1846 RLS_1 

一次一個元素的限制,在Windows上,標籤版本的條目出現在元素的頂層目錄中:

Z:\myvob\src> dir [email protected]@ 2006-11-10T17:34    1846 RLS_1 

也不要忘記,pathnames can involve multiple elements

路徑名後跨越到擴展命名空間@@必須在路徑名每個後續元素指定版本。
例如:

自動選擇版本的元素projsrc:跨越到擴展命名空間在目錄元素包括,指定一個版本的包括和的sort.h一個版本:

Windows: 

\proj_vob\[email protected]@\RLS_1\include\RLS_1\sort.h\RLS_1 

OP在評論中增加:

問題是每元素限制。這是我們環境中的默認設置,但有人在他的VOB中使用了每分支一次的設置。所以標籤文件不能在頂層目錄下創建。

每元素限制是mklbtype的默認值。
A mklbtype -pbranch命令創建一個標籤類型,可以在元素的每個分支上使用一次。

+0

謝謝你的回答。問題是每元素限制一次。這是我們環境中的默認設置,但有人在他的VOB中使用了每分支一次的設置。所以標籤文件不能在頂層目錄下創建。 –

+0

「dir」是一個Windows命令的說法並不令人滿意,因爲'copy'也是一個Windows命令,可以找到標籤文件。 –

+0

@RobertS。好的,我已經修改了答案以刪除不可見的目錄參數,並強調實際問題。 – VonC