« puppy linuxにtracインストール(その1) | トップページ | windowsのSubversionでコミット時に名前をつけかえる(その2) »

2008年9月17日 (水)

windowsのSubversionでコミット時に名前をつけかえる

authorがIDとかになっちゃうのを名前に付け替えるとかしたい人向け。

とりあえずリポジトリがローカルドライブかネットワークドライブ
(ドライブレター割り付けたもの)で使える方法です。

以下はパスが通った場所にsvn.exeをおいてある場合に有効です。
またpre-revprop-changeフックスクリプト(pre-revprop-change.bat)
でuserを変更できる設定にしておく必要があります。
(たとえばpre-revprop-change.batの中身を空にしておくとか、
条件付でexit 0を返すようにしておくとか)

post_commitフックではreposとして
d:\ccc
の形式がやってきます
(フックスクリプトは表示されないのでこれに気づくのにかなり時間を食いました。)。
svn propget/propsetは
file:///d:/ccc
の形式なのでそのままでは実行されません。
よって\を/に置換してfile:///を頭にくっつけて処理します。
基本的にわかってないので、無駄が多いです。

<post-commitフックスクリプト(post-commit.bat)中身>

SET REPOS2=%1
SET REV=%2
SET REPOS1=%REPOS2:\=/%
SET REPOS="file:///%REPOS1%"

FOR /f %%A IN ('svn propget svn:author --revprop -r %REV% %REPOS%') DO SET USER=%%A
if "%USER%"=="Anohito" (
    svn propset svn:author --revprop -r %REV% Konohito %REPOS%
    exit 0
)
exit 0

|

« puppy linuxにtracインストール(その1) | トップページ | windowsのSubversionでコミット時に名前をつけかえる(その2) »

Subversion」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: windowsのSubversionでコミット時に名前をつけかえる:

« puppy linuxにtracインストール(その1) | トップページ | windowsのSubversionでコミット時に名前をつけかえる(その2) »