我想設置提交郵件的一個項目,我的工作,如下所述:
http://producingoss.com/en/vc.html#commit-emails設置SVN提交電子郵件最簡單/最好的方法?
也就是說,使用後commit鉤子發送電子郵件到列表包含提交標題/ log和diff的變化。
在Linux機器上設置這個最簡單的方法是什麼?
我想設置提交郵件的一個項目,我的工作,如下所述:
http://producingoss.com/en/vc.html#commit-emails設置SVN提交電子郵件最簡單/最好的方法?
也就是說,使用後commit鉤子發送電子郵件到列表包含提交標題/ log和diff的變化。
在Linux機器上設置這個最簡單的方法是什麼?
當創建新庫在hooks/post-commit.tmpl
中提供了示例提交後掛接。它包含一行看起來或多或少是這樣的:
/usr/share/subversion/hook-scripts/commit-email.pl "$REPOS" "$REV" [email protected]
只是你要發送通知,該腳本重命名爲hooks/post-commit
地址代替電子郵件(刪除tmpl
擴展名),並使其可執行(chmod a+x
)。
當您運行沒有任何參數的commit-email.pl
腳本時,您將看到一個使用屏幕,其中包含允許修改主題行或發件人地址的附加選項。
請注意,Debian的情況是commit-email.pl
腳本位於可選subversion-tools
包中。
我們使用svnmailer爲此。我們將我們特定於存儲庫的post-commit
掛鉤腳本符號鏈接到一個腳本,該腳本又調用svnmailer。配置非常簡單,通過它們的simple.conf
示例配置,您可以在幾分鐘內啓動並運行。請注意,它是用Python編寫的,所以這是安裝的先決條件。
我們整個提交後鉤子腳本是隻有幾行(請注意,你可能會做其他的東西在你的post-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
雖然這個問題是有點老了,只是想我要離開我爲那些來到這裏,從谷歌的意見:
我認爲這裏提到的解決方案。 commit-email.pl
對我來說既簡單又好。但是,我發現兩種解決方案都缺乏適當的格式。
因此,svnnotify
包似乎爲我產生足夠好的格式化和彩色電子郵件。
在Debian/Ubuntu的系統,您可以通過鍵入安裝:
apt-get install libsvn-notify-perl
然後,如果你要發送電子郵件到Gmail帳戶,由於在Gmail奇CSS的支持,我會強烈建議應用補丁found here,這意味着:
HTML.pm
和ColorDiff.pm
/usr/share/perl5/SVN/Notify/HTML.pm
和/usr/share/perl5/SVN/Notify/HTML/ColorDiff.pm
,RESP ectively。最後,建立了post-commit
鉤子腳本通常的方式:
# email notifications for commits
/usr/bin/svnnotify --repos-path "$REPOS" --revision "$REV" \
--to [email protected] \
--from [email protected] \
--with-diff \
--subject-cx \
--subject-prefix 'Your Project Name: ' \
--handler HTML::ColorDiff \
--css-inline
2>&1 &
exit 0
檢查SVN-MOD-電子郵件包描述here。 svn-mod-email是一款功能強大的SVN電子郵件通知管理工具,以Debian存檔形式提供。它很容易安裝,配置和使用。
這看起來不錯,謝謝 – 2009-02-01 23:02:56
不客氣。對不起,這是錯誤的答案。 – 2009-02-01 23:33:21
如果我能接受兩者,我會。只要我發現commit-email.pl太限制了,我就直接跑到svnmailer。再次感謝! – 2009-02-01 23:41:30