コミットメール

コミットしたらメールが届くようにしたくなったので、いろいろ。

基本的には、リポジトリの hooks ディレクトリに post-commit.tmpl があるので
それをコピーすればいいはず。

しかしいろいろうまくいかなかったのでメモ。

 % cp post-commit.tmpl post-commit
 % chmod +x post-commit
 % vim post-commit

して、最後の行の

 /usr/lib/subversion/hook-scripts/commit-email.pl "$REPOS" "$REV" commit-watchers@example.org

 /usr/lib/subversion/hook-scripts/commit-email.pl -s "[プロジェクト名]" "$REPOS" "$REV" hoge-svn@example.org

みたいに修正。ちなみに chmod +x を忘れててかなりはまった。

ためしにコミットしてみるとすごい文字化け。調べたらcommit-email.plで

 push(@head, "Content-Type: text/plain; charset=UTF-8\n");

って書いてあるじゃん。もともとのファイルはeuc-jpで書いてあったので、そりゃあ化けるよ。(ちなみにmewは賢いので(いやemacsか?)、ちゃんと表示してくれる。)

Jcodeとかがんばって書いてもいいだろうけど、とりあえず動けばいいや的に

 push(@head, "Content-Type: text/plain; charset=euc-jp\n");

としたcommit-email-eucjp.plを作ってしまった。perlなんて読むのも久しぶり。

というかなんでpythonで書いてないんだろうねえ。svn_load_dirsもplだったし。