SVN 邮件自动发送

功能:在代码提交到版本库后自动发送邮件到相关成员。
环境: windows XP
-----------
步骤:
1. 进入库的hooks目录:
   创建两个文件(post-commit.bat 和 groupList.txt)。
   post-commit.bat 批处理在代码提交成功后调用;
   groupList.txt 为收件人列表文件;
2. 下载,复制 blat.exe 文件到系统目录;


post-commit.bat 文件如下
  1. :: begin of post-commit.bat
  2. :: 提交结束后,用blat发邮件通知相关人员
  3. @echo off
  4. rem Add path to Subversion executable 
  5. //set path=%path%;D:/VersionControl/Subversion/Subversion/bin
  6. rem Add path to Blat
  7. //set path=%path%;H:/VersionControl/svn/mailer/blat194
  8. setlocal
  9. SET REPOS=%1
  10. SET REV=%2
  11. :: LOG_FILE 用于记录log  AUT_FILE用于记录作者
  12. SET LOG_FILE=%TEMP%./svnfileR-%REV%.html
  13. SET AUT_FILE=%TEMP%./svnfileA-%REV%
  14. echo ^<html^> >> %LOG_FILE%
  15. echo ^<a href="svn:%1"^>svn路径:%1^</a^> rev: %2 >> %LOG_FILE%
  16. echo ^<h2 style="color:#FFFFFF; background: green;"^>Information^</h2^> >> %LOG_FILE%
  17. :: 输出提交作者
  18. echo ^<div^>^<b^>提交作者:^</b^>  >> %LOG_FILE%
  19. svnlook author -r %REV% %REPOS% >> %LOG_FILE%
  20. echo ^</div^>   >> %LOG_FILE%
  21. :: 输出提交时间
  22. echo ^<div^>^<b^>提交时间:^</b^>  >> %LOG_FILE%
  23. svnlook date -r %REV% %REPOS% >> %LOG_FILE%
  24. echo ^</div^>   >> %LOG_FILE%
  25. :: 输出记录信息
  26. echo ^<div style="color:#FFFFFF; background:#4682B4;"^>^<p^>^<b^>信息:^</b^>^</p^>  >> %LOG_FILE%
  27. svnlook log -r %REV% %REPOS% >> %LOG_FILE%
  28. echo ^</div^>^<hr^>   >> %LOG_FILE%
  29. echo ^<h2 style="color:#FFFFFF; background: green;"^>Changed Files^</h2^>  >> %LOG_FILE% 
  30. svnlook changed -r %REV% %REPOS% >> %LOG_FILE%
  31. echo ^</html^> >> %LOG_FILE%
  32. :: 将LOG_FILE的内容作为邮件内容发送出去
  33. blat "%LOG_FILE%" -tf "发送邮件收件人清单文件,绝对路径" -subject "[svn] rev %REV%, %AUTHOR%" -server "smtp.*.com" -f "*@*.com" -u "" -pw ""
  34. DEL %LOG_FILE%
  35. :: end of post-commit.bat
groupList.txt 文件如下:
*@*.com
1234@123.com
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值