チェックアウトされたファイルを見つける方法
-
06-07-2019 - |
質問
Visual Source Safe 6.0d(作業要件)を使用していますが、小さなシェルスクリプトをハッキングして、ソースツリーを簡単に削除したり、ファイルをチェックアウトした場合に警告したりできるようにしています。誤って作品を削除しないようにできます。ファイル自体の読み取り専用ビットをチェックする以外に、ファイルがチェックアウトされているかどうかを確認する方法はありますか?
- VSSはファイルを書き込んでいないようです(ファイルをチェックアウトする前後にディレクトリのスナップショットを作成しましたが、リストされたファイルに違いはありませんでした)
- グーグルでは何も見つからないようです。
- vssver.sccの違いもチェックしましたが、何も見つかりませんでした。
覚えておいて、書き込み可能なファイルをチェックすることは世界で最悪のことではありませんが、VSSがソースツリー(* .ncb、*。scc、*。sln)のいくつかのファイルをチェックせずに書き込み可能にするようです何でも。ファイルを単に除外できますが、もう少しエレガントな解決策を見つけようとしています。
解決
おそらく最も堅牢な手法は、SourceSafe自体にチェックアウトの対象や、個々の対象ファイルをチェックアウトするかどうかを尋ねることです。小さなシェルスクリプトでこれを行う方法は明らかではないことを理解しながら、 PowerShell 。
SourceSafeは、 OLEオートメーションオブジェクトモデル(COMオブジェクトモデルとも呼ばれます)。PowerShellはCOMオブジェクトと通信できます。このようなものに慣れていない場合、学ぶことはたくさんありますが、最終的には価値があります。
あるいは、PowerShellがあまりにも異質な場合、VBScriptを使用してCOMオブジェクトを制御することもできます。
他のヒント
COMを使用して、ファイルがチェックアウトされているかどうかを確認できます。 IVSSItem.IsCheckedOut プロパティ。 COMを介したVSSの使用の詳細については、次を参照してください。
http://msdn.microsoft.com /en-us/library/4d44xhsd%28VS.80%29.aspx