2013/03/09

バッチファイルで Visual SourceSafe を操作する方法

手動でソース管理なんてやってたらバグの温床になってしまいます。

そういう時に、Visual SourceSafe(以下、VSSと言う)というソース管理ソフトを使います。


VisualStudioでソースを修正すると自動的にチェックアウトされ、
複数人で同じソースを修正してしまうことを防ぐことができます。
バージョン管理もできるので、デグレ前のソースとの比較もできます。


しかし、VisualStudioを使用しないソース(帳票やバッチなど)は
直接VSSからダウンロード、チェックアウトしなければなりません。


煩雑なフォルダ階層に、膨大な数のソース、ビミョーな検索機能・・・・・・


そんな中から目的のファイルを見つけるだけでも一苦労です。



ということで、バッチファイルを用いて、VSS を操作する方法を紹介します。



VSSを操作する



基本的な操作である、以下の2つについて説明します。

  ・ダウンロード
  ・チェックアウト
※チェックインはちょっと面倒だったから省略

@echo off

rem VSSのユーザ名とパスワードを設定する
set ssUser=bc_rikko
set ssPwd=rikko123

rem ダウンロード先のパス
set dlPath="D:\作業フォルダ"

rem 環境設定
cd /d "C:\Program Files\Microsoft Visual SourceSafe"

rem VSSサーバのアドレス
set ssDir=\\192.168.1.1\vss

if errorlevel 100 goto BAD_FAILURE

rem ダウンロード先フォルダのサブフォルダ全削除
for /D %%f in (%dlPath%/*) do rd %%f /s /q

echo 処理中

rem 最新バージョンの取得(ワイルドカード使用可能)
ss Get "$/source_folder/csharp.cs" -W -R -I -N -O -GL%dlPath%

rem ソースのチェックアウト
ss Checkout "$/source_folder/csharp.cs" -R -I -N -O

rem ソースのチェックイン(動作未確認)
 
echo.

if errorlevel 0 goto SUCCESSED
goto END

rem Exit code 0:正常終了
:SUCCESSED
echo.
echo 完了!

rem Exit code 100:異常終了
:BAD_FAILURE
echo.
echo 異常終了

:END
pause

こんな感じでVSSをバッチファイルで操作することができます。

私の場合は、 VBAでバッチファイルを生成し、実行しています。

その他のコマンドは、msdnの コマンドリファレンス を参照ください。



後記


記事を書いているときに知ったのですが、
Visual SourceSafe は2012年10月にメインサポート終了したそうです。

後継製品は Team Foundation Server です。

今回紹介したコマンドも 「ss Get」 を 「tf Get」 と読みかえれば使用できると思います。



以上

0 件のコメント :

コメントを投稿