使用websvn进行svnnotify

时间:2011-12-28 12:05:23

标签: svn websvn

我已将svnnotify配置为在每次提交后发送电子邮件。现在我想直接在邮件的修改路径字段中提供URL以通过websvn显示差异,即,所有修改的文件应该通过websvn直接打开以及先前版本和当前版本之间的差异。

请在下面找到要求, 我目前的post-commit钩子脚本是

#!/bin/sh

 REPOS="$1"
 REV="$2"


   /usr/local/bin/svnnotify --repos-path "$1" --revision "$2" \
   --to srikanth@mydomain.com\
   --from commitnotifier@mydomain.com \
   --svnweb-url 'http://<svnip>/websvn/revision.php?repname=repos+1&isdir=1&'
   --subject-cx \
   --subject-prefix 'REPO-NAME ' \

上述脚本的输出是:

Revision: 37
         http://<svnip>/websvn/revision.php?repname=repos+1&isdir=1&/revision/?rev=37&view=rev
Author:   srikanth
Date:     2011-12-28 13:08:33 +0530 (Wed, 28 Dec 2011)
Log Message:
-----------
Testing for multiple locations checkin

Modified Paths:
--------------
   trunk/branch1/test1.java
   trunk/branch2/test2.java

我想以这样的方式修改上面的脚本:每当用户点击修改过的路径时,它应该直接在websvn中显示差异。请求您的建议。

谢谢你, srikanth B

1 个答案:

答案 0 :(得分:0)

尝试在以下网址中替换变量(放入{}括号),使其适合您的具体情况:

http://{websvn_url}/diff.php?repname={reponame}&path={file_to_compare}&rev=PREV 

用于单个文件比较

http://{websvn_url}/comp.php?repname={reponame}&compare[]={folder_to_compare}@$2&compare[]={folder_to_compare}@HEAD 

用于文件夹比较

也许这不起作用,但至少会给你一个提示,找到适当的解决方案。