質問
ここで説明されているように、現在取り組んでいるプロジェクトにコミットメールを設定したいと考えています。
http://producingoss.com/en/vc.html#commit-emails
つまり、コミット後のフックを使用して、コミットのタイトル/ログと変更の差分を含むリストに電子メールを送信します。
Linux マシンでこれを設定する最も簡単な方法は何ですか?
解決
サンプルポストコミットフックをhooks/post-commit.tmpl
で提供されています。それはこのように、多かれ少なかれな行が含まれています:
/usr/share/subversion/hook-scripts/commit-email.pl "$REPOS" "$REV" commit-watchers@example.org
ジャストhooks/post-commit
(tmpl
拡張子を削除します)と(chmod a+x
)それを実行可能にするために、スクリプトの名前を変更し、あなたに通知を送信するアドレスでメールを置き換えます。
あなたは件名またはFromアドレスを変更する例を可能とする追加オプションと使用方法の画面が表示されます引数なしcommit-email.pl
スクリプトを実行すると。
それはcommit-email.pl
スクリプトは、オプションのsubversion-tools
パッケージにあるDebianの場合であることに注意してください。
他のヒント
この質問は少し古いですが、Google からここに来た人のために私の意見を残しておこうと思いました。
ここで述べた解決策を検討しました。の commit-email.pl
私にとっては、より簡単で、より良い作業でした。ただし、どちらのソリューションにも適切なフォーマットが欠けていることがわかりました。
したがって、 svnnotify
このパッケージは、私にとって十分なフォーマットと色付きの電子メールを生成するようです。
Debian/Ubuntu システムでは、次のように入力してインストールできます。
apt-get install libsvn-notify-perl
Gmail アカウントにメールを送信する場合は、Gmail での CSS サポートが奇妙なため、パッチを適用することを強くお勧めします。 ここで見つかりました, 、これは次のことを意味します:
- ダウンロード
HTML.pm
そしてColorDiff.pm
- 彼らと交換してください
/usr/share/perl5/SVN/Notify/HTML.pm
そして/usr/share/perl5/SVN/Notify/HTML/ColorDiff.pm
, 、 それぞれ。
そして最後に、 post-commit
通常の方法でスクリプトをフックします。
# email notifications for commits
/usr/bin/svnnotify --repos-path "$REPOS" --revision "$REV" \
--to your.email@address.com \
--from from.email@address.com \
--with-diff \
--subject-cx \
--subject-prefix 'Your Project Name: ' \
--handler HTML::ColorDiff \
--css-inline
2>&1 &
exit 0
私たちは、このために svnmailer のを使用しています。私たちは順番にsvnmailerを呼び出す単一のスクリプトに私たちのリポジトリ固有post-commit
フックスクリプトをシンボリックリンク。構成は、前方かなりストレートで、そしてそのsimple.conf
例の構成で、あなたは数分で起動して実行することができます。それは、インストールするための前提条件であるので、それは、Pythonで書かれていることに注意してください。
私達の全体のポストcommitフックスクリプトは、わずか数行(あなたがコミット後のフックで他のものを行う可能性があることに注意してください、私たちは現在ない)であります
#!/bin/sh
CONFIG="/usr/local/svnmailer/default.conf"
MAILER="/usr/bin/svn-mailer"
# These are passed in by subversion
REPOS="$1"
REV="$2"
"${MAILER}" --commit \
--config "${CONFIG}" \
--repository "${REPOS}" \
--revision "${REV}" \
--background
チェックしてください svn-mod-メール パッケージの説明 ここ. 。の svn-mod-メール は、Debian アーカイブとして提供される、SVN 電子メール通知管理用の強力なツールです。インストール、設定、使用は簡単です。