2009-06-22 40 views
1

我使用的是Visual Source Safe 6.0d(工作要求),我一直試圖將一個小小的shell腳本一起破解,以便我可以輕鬆刪除源樹或警告我,已經檢出了文件,所以我可以確保我不會意外刪除工作。除了檢查文件本身的只讀位之外,是否有任何方法可以判斷文件是否已檢出?如何查找簽出的文件

  1. VSS似乎並沒有被寫入任何文件(我把目錄的快照之前,檢查出一個文件後,並有中列出的文件沒有區別)
  2. 我似乎無法通過谷歌搜索找到任何東西。
  3. 我也檢查了vssver.scc的差異,沒有找到任何東西。

你要知道,檢查可寫的文件是不是在世界上最糟糕的事情,但它好像VSS使得在源代碼樹的幾個文件(* .NCB,* .scc,*的.sln)沒有寫我檢查了任何東西。我可以簡單地排除文件,但我試圖找到一個更優雅的解決方案。

回答

2

也許是最穩健的方法是問自己的SourceSafe是什麼簽出和/或感興趣的個體文件是否簽出。雖然我意識到如何在一個shell腳本中做到這一點並不明顯,但我會主張使用PowerShell

SourceSafe公開了一個OLE Automation object model(也稱爲COM對象模型),並且PowerShell可以與COM對象通信。如果你不熟悉這些東西,那麼學習很多東西,但最終它是值得的。

或者,如果PowerShell太過於陌生,VBScript也可用於控制COM對象。