我已将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
答案 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
用于文件夹比较
也许这不起作用,但至少会给你一个提示,找到适当的解决方案。