Subversion 邮件通知

来源:互联网 发布:布朗熊玩偶淘宝 编辑:程序博客网 时间:2024/06/14 06:51

                                
Subversion服务器为我们提供了很多的hook,可以让我们在有人对仓库进行动作的时候进行一些相应的处理,这些hooks都放在仓库目录下的hooks子目录下面,具体hook的含义可以参考Subversion的帮助的第5章的Hook Scripts。
一、SVN
Hooks介绍
1.      
SVN Hooks的位置
    位于Repository的hooks目录下,每一个Repository对应一个hooks目录。
2.      
SVN Hooks名称
SVN Repository 刚配置完成,所有的hooks脚本以.tmpl扩展名存在。若要启用某个hooks,去掉其.tmpl扩展名。
如果是在Windows系统配置,需要有扩展名,可以为.exe或bat。
二、post-commit脚本
当用户提交新版本后,执行该脚本。该脚本一般用于外放邮件。
post-commit接受到REPOSE-PATH(仓库路径)和REV(当前提交版本的版本号)这2个参数。
使用post-commit定制发送邮件有两种方法:commit-email.pl脚本和mailer.py脚本。
在此我们使用mailer.py定制发送邮件,在配置文件mailer.conf中设置邮件信息。
配置步骤如下:
1.       将库中hooks/post-commit.tmpl改名为post-commit,并让其有执行权限。
2.      
最后一行改为:
/usr/lib/subversion/tools/hook-scripts/mailer.py
commit "$REPOS" "$REV"
说明:mailer.py 将会在Respository/conf/中查找mailer.conf配置文件。
3.       mailer.conf配置实例
[general]
# 指定SMTP方式发送的服务器
smtp_hostname = localhost
[defaults]
diff = /usr/bin/diff -u -L %(label_from)s -L %(label_to)s
%(from)s %(to)s
#commit动作的邮件的标题前缀
commit_subject_prefix = svn commit: 
#邮件的from addresses
#post-commit有一个预定义的变量author,它缺省由mailer.py的AUTHOR定义
#或者是该版本的author,如果没有定义前面2个的值,author的值为"no_author"
#用%(author)s就可以获得该变量的值
from_addr = %(author)s@hostname 
generate_diffs = add copy modify
[trunk/project/]
#指定要执行post-commit的路径
for_paths = trunk/project/
#邮件的接收地址,用空格分隔
to_addr = 
4.        选择是否发送邮件
进行上述配置后,我们就可以实现执行提交后发送邮件通知相关人员,但这样每次提交都会发送邮件,很有可能造成垃圾邮件。为了实现有选择的发送邮件通知,我们可以将post-commit中的内容修改为:
REPOS="$1"
REV="$2"
SVNLOOK=/usr/bin/svnlook
$SVNLOOK log -r "$REV" "$REPOS" | \
   grep
"^info:" > /dev/null || exit 0
/usr/lib/subversion/tools/hook-scripts/mailer.py commit
"$REPOS" "$REV"
如果用户希望本次提交通知其他相关人员,则在执行commit命令时,日志以“info:”开头,反之不会发送邮件。
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 快餐英语 快餐菜 送快餐 快餐菜品种 快餐经营 快餐排名 清真快餐 早餐快餐 美食快餐 快餐快餐 方便快餐 快餐美食店 关于快餐 网上快餐 公司快餐 中国快餐排行榜 万古之王快餐 艺校模特快餐600 快餐达人城郊路边店找快活 快餐达人路边店70元找快活长 快餐300过夜500房费自负 怎么找同城快餐 中国快餐品牌排行50强 快餐车演员表 10元快餐20道菜什么菜成本低 10元快餐菜谱16个 快餐什么意思 成都按摩店快餐多少钱 快餐达人城边郊区泄火 健康快餐做法 卖快餐需要准备什么 西式快餐连锁 中式快餐品牌 快餐是什么意思 中国快餐品牌排行 中式连锁快餐排名 10元自助快餐 中式快餐排名 如何做外卖快餐 餐饮小吃创业项目 特色餐饮连锁