- 通过svn pre-commit方法,限制svn提交log,必须包含关键词 “ #213 ”
- 这样就可以产生 #213 的redmine issue链接
- 通过redmine的版本库,就可以看到svn每次提交的log,都有对应的issue号
下面代码对应的文件名:SVN/XXX/hooks/pre-commit
语法:是shell脚本,参考bash语法即可,正则表达式形式属于扩展正则表达式。
简单解释:$1 $2即pre-commit命令的命令行参数,只需要记住$1是repository path;$2是将要发送的txn名称。了解这一点,只是为了熟悉svnlook命令而已。
LOG_INFO=`/usr/bin/svnlook log -t $2 $1`
if [[ "LOG_INFO" =~ \(\#[0-9]+\) ]]; then
echo "" 1>&2
else
echo "" 1>&2
echo " ## Ex. svn ci -m \"xxx (#213)\"" 1>&2
exit 1
fi