首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > CVS SVN >

svn服务端挟制注释配置方法

2013-08-01 
svn服务端强制注释配置方法[sizexx-small]利用svn的pre-commit钩子可简单实现此要求:[/size]进入仓库的ho

svn服务端强制注释配置方法
[size=xx-small]利用svn的pre-commit钩子可简单实现此要求:[/size]

    进入仓库的hooks目录下(如:project1/hooks),找到pre-commit.tmpl文件,重命名:windows环境下修改为pre-commit.bat ,Linux环境下修改为pre-commit。

Windows环境:(已测试)

    用记事本打开pre-commit.bat文件,编辑如下脚本(保存即生效,不用重启服务)

    提示信息可修改

@echo off  setlocal  set REPOS=%1  set TXN=%2           rem 保证输入8个字符 svnlook log %REPOS% -t %TXN% | findstr "........" > nul if %errorlevel% gtr 0 goto :err_action rem 过滤空格字符svnlook log %REPOS% -t %TXN% | findstr /ic:"        " > nul if %errorlevel% gtr 0 goto :success  :err_action echo 你本次版本提交未填写任何变更的日志说明信息.      >&2 echo 请补充日志说明信息后再提交代码,例如:功能说明等.  >&2 echo 输入的日志信息不少于8个字符说明(或4个汉字),谢谢! >&2 echo *******************禁止空格数据***************** >&2 goto :err_exit  :err_exit exit 1  :success exit 0


Linux环境(未测试)

    用Vi等编辑命令编辑文件pre-commit,编辑内容如下(编辑完成需要给该文件添加可执行权限:chmod +x pre-commit )

    提示信息可修改
#!/bin/shREPOS="$1"TXN="$2"SVNLOOK=/usr/bin/svnlook# check that logmessage contains at least 10 alphanumeric charactersLOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c`if [ "$LOGMSG" -lt 10 ]; #要求注释不能少于5个字符,可自定义,提示信息也可自定义thenecho -e "\nEmpty log message not allowed. Commit aborted!" 1>&2exit 1fi

热点排行