2008年09月24日 [長年日記]
_ [Tips] SubversionのHEADのリビジョン番号を環境変数に取得するバッチ。
Windows環境でバッチを書く際にちと悩んだので備忘録として。
REM svnのリビジョンを取得 :GET_REVISION FOR /F "tokens=1,2 delims= " %%I IN ('svn info -r%1') DO IF "%%I" == "Revision:" SET %1_REVISION=%%J GOTO :EOF
使う際はこんな感じ。
CALL :GET_REVISION HEAD ECHO %HEAD_REVISION%
svnコマンドが日本語化されている環境では、svn infoの結果を参考にしつつ"Revision:"のところを書き換えてあげればOKです。 HEAD以外にもCOMMITTEDとかBASEとかも同じようにいけます。 もっといい方法がありそうなんだけど、今のところうまくいっているのでこれで良しとします。
尚、事前にsvn updateしてよければ、svnversionの結果を受け取ればOKなので、こんな面倒なことしなくてよかったりします。