2011-10-27 29 views
1

我在一個工具中使用ClearCase自動化庫(CAL),該工具可幫助我跟蹤未集成的更改;現在我想擴展該工具,以便我也可以通過它進行簽入。在快照視圖中查找本地文件副本

對於此功能,我需要查找快照視圖的本地副本。雖然我可以問CC哪個View附加到某個目錄,但我似乎無法找到一個函數來查找給定View的本地目錄;另外,看起來似乎最可靠的方法是找出本地是否存在快照視圖,以便將HostName屬性與本地計算機名稱進行比較。

因此:給定IClearCase接口,如何找到存在快照視圖的所有目錄?

回答

1

我確認只有在知道其視圖標記時才能找到快照視圖的根目錄:如果需要,可以將快照視圖加載到幾個單獨的目錄中。

快照視圖和其根目錄之間的唯一鏈接是包含視圖的uid的隱藏文件.view.dat

此外,附加到視圖的主機名與它在計算機上加載或不在計算機上的事實無關。它是視圖服務器的名稱(可以是您自己的桌面,也可以是集中式服務器)。在該服務器上,view.exe進程管理該視圖的所有與ClearCase相關的操作。

因此,通過您的腳本(例如perl script),您首先不需要CAL來查找該視圖:首先需要查看view.dat文件,提取uid,然後檢查它是否與你正在尋找的view uid (lsview -l -full -pro)相同。

+0

所以我唯一的選擇似乎是掃描目錄的可配置路徑,當傳遞到目錄 - >查看解析器時不會出現錯誤... –

+0

@SimonRichter:而不是嘗試很多目錄,最好是隻嘗試隱藏文件'view.dat''。 – VonC

+0

謝謝,會做到這一點。 –