下面代码对应的文件名: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