windows 下SVN邮件使用及,SVN邮件乱码及信息错误 使用SVN1.40 装好后使用如下方法设置邮件发送功能: Subversion是通过Hooks 来控制每次Transaction的行为, 有Pre-Commit, Post-Commit 等.一般情况下我们希望在提交代码后,Subversion可以自动发送邮件给组里的每个成员, 这种情况下我们可以通过post-commit这个脚本来完成. 这些脚本存放在你的Repository的Hooks目录下, 一般情况下, 是以.tmpl后缀结尾, 如果是Unix平台, 需要改成.sh, Windows 平台改成.bat或.cmd . 当一个Transaction成功完成后, 就会调用post-commit.bat 这个脚本. 下面的例子给出了如何在Subversion提交代码后自动发送邮件的例子: set REPOS=%1 set REV=%2 commit-email.pl %REPOS% %REV% -l C:Tempsvnlookcommit-email.log --from [email=your-email@server.com]your-email@server.com[/email] -s "[project-dev] Commit" commit-email-win.pl 是用来发送邮件的Perl 脚本, 所以你的系统需要安装Perl. %REPOS% 参数是你的Repository的目录 %REV% 参数是Commit的Revision号 --from 表面邮件发送人的地址 -l 参数是日志的目录, 用来记录每次邮件发送的细节 -s 参数是邮件的标题. 下面给出commit-email-win.pl, 您可以将他放在svn/bin 目录下, 并保证svn/bin在系统的PATH环境变量里面. 或者你可以在post-commit.bat中使用绝对路径调用commit-email-win.pl 请根据你的系统配置, 正确改写下面几处变量: $sendmail #perl.exe所在路径 $svnlook #svnlook.exe所在路径 $emailsFile #存放收件人地址的文件 $tmp_dir #临时目录 $mailserver # SMTP的域名或者IP 找到$mailer->auth( ) , 正确填写你的邮件地址的帐号, 和密码 (SMTP 验证用), 并保证你的Perl 已经安装Authen::SASL 至此,可以直接运行commit-email-win.pl 脚本,来检查脚本是否正常运行,此时mailerDebugLevel可以设置为1. > commit-email.pl d:/svn_repository 2 如果运行成功, 你就可以通过Commit再次检查运行是否正常 通常在Windows下使用安装包安装Perl后是不带Authe::SASL模块得。可以使用ppm连接active perl 的网站安装这一模块,如果由于某些限制不能使用ppm的网络功能,则可以下载相关源码包后编译安装。 按上面的方法,邮件是可以发了,但中文邮件内容乱码,且发送的信息有问题. 求助问题: 仓库目录为:d:/svn_repository 命令行下使用: commit-email.pl d:/svn_repository 2 调试,发送邮件格式正确,但中文内容乱码; 使用POST-COMMIT调用时,发送内容却是: Author: K:\Program Files\Subversion\bin\commit-email.pl: `"K:\Program Files\Subversion\bin\svnlook.exe" info N:\\svntest\\projecta -r 16' failed with this output: Date: New Revision: 16 Modified: Log: K:\Program Files\Subversion\bin\commit-email.pl: `"K:\Program Files\Subversion\bin\svnlook.exe" diff N:\\svntest\\projecta -r 16' failed with this output: 我的POST-COMMIT: set REPOS="d:\\svn_repository\\" set REV="$2" commit-email.pl %REPOS% %REV% --from test@google.com -l "C:\\Tempsvnlookcommit-email.log" -s "svn TEST"
| ||
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) | Powered by Discuz! X3.2 |