SVN邮件通知功能

attention:“======================”之间的为发邮件功能的脚本,需要将脚本内容复制到post-commit.bat里面,然后把post-commit.bat放入svn版本库目录的hooks目录下面。

=================================================================================================================================

@echo on
rem 获取hooks目录和版本库目录
set REPOS=%1
set REV=%2
rem 产生随机数,作为日志的文件名
set RD=%RANDOM%
rem 邮件的用户名(mail_user)和密码(pass)
set mail_user=1234567
set pass=888888

svnlook info %REPOS% > C:\svnemail\INFO_%RD%.txt

svnlook changed %REPOS% > C:\svnemail\CHG_%RD%.txt

sed -e "1"p -n C:\svnemail\INFO_%RD%.txt > C:\svnemail\temp.txt&&for /f  %%i in (C:\svnemail\temp.txt) do  set user=%%i
sed -e "2"p -n C:\svnemail\INFO_%RD%.txt > C:\svnemail\temp.txt&&for /f  %%i in (C:\svnemail\temp.txt) do  set dtime=%%i
sed -e "4"p -n C:\svnemail\INFO_%RD%.txt > C:\svnemail\temp.txt&&for /f "tokens=*" %%i in (C:\svnemail\temp.txt) do  set LOG_MSG=%%i

 

echo Dear %user% : >> C:\svnemail\MSG_%RD%.txt

echo         目前提交的版本号是:%REV% >> C:\svnemail\MSG_%RD%.txt

echo         提交时间 :%date:~0,10% %time:~0,8% >> C:\svnemail\MSG_%RD%.txt

echo         提交日志 :%LOG_MSG% >> C:\svnemail\MSG_%RD%.txt
echo     ---------------------------------------------------------------以下是%user%最新提交的内容-------------------------------------------------------------------------- >> C:\svnemail\MSG_%RD%.txt
echo         提交的文件内容如下 : >> C:\svnemail\MSG_%RD%.txt

echo.   >> C:\svnemail\MSG_%RD%.txt

type  C:\svnemail\CHG_%RD%.txt >>  C:\svnemail\MSG_%RD%.txt
echo     ---------------------------------------------------------------以上是%user%最新提交的内容-------------------------------------------------------------------------- >> C:\svnemail\MSG_%RD%.txt
echo                                                                                                             tanzugan >> C:\svnemail\MSG_%RD%.txt
echo                                                                                                       %dtime% >> C:\svnemail\MSG_%RD%.txt


type  C:\svnemail\scm.txt >>  C:\svnemail\MSG_%RD%.txt

blat C:\svnemail\MSG_%RD%.txt -to test@zugantan.com  -cc 1234567@qq.com  -base64 -charset Gb2312 -subject "SVN库当前提交情况,提交者:%user% SVN当前版本号:%REV%"  -server smtp.qq.com -f 1234567@qq.com  -u %mail_user% -pw %pass%

-========================================================================================================================================

注意:C:\svnemai目录必须手动新建,-to是收件人,-cc是抄送人。在svnemail文件夹里面手动新建一个scm.txt文件。
在系统中必须要有blat和sed文件。附件有下载blat和sed文件。或者网上下载,需要把blat和sed文件添加到环境变量中。

没有更多推荐了,返回首页