文章目录

不少开发员提交修改的时候都不写注释,导致查看历史时很费劲,也不符合规范。有的公司要求每次提交修改时都写上bug号或者任务描述,那么如何在工具上防止开发人员们不写注释呢?

利用svn的pre-commit钩子可简单实现此要求。

1.进入仓库下hooks目录,找到pre-commit.tmpl文件,重命名名pre-commit.

1
2
3
# cp pre-commit.tmpl pre-commit    
# chmod +x pre-commit
# vim pre-commit

2.编辑pre-commit文件,将:

1
2
3
$SVNLOOK log -t "$TXN" "$REPOS" | \    
grep "[a-zA-Z0-9]" > /dev/null || exit 1
commit-access-control.pl "$REPOS" "$TXN" commit-access-control.cfg || exit 1

这三行注释掉(前面加#符号)。

3.在SVNLOOK=/usr/bin/svnlook下添加如下几行:

1
2
3
4
5
6
7
LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c`

if [ "$LOGMSG" -lt 4 ];#要求注释不能少于4个字符,您可自定义
then
echo -e "\n代码注释不能为空,请至少输入4个字符" 1>&2
exit 1
fi

保存,退出,此时提交SVN代码,如果不填写注释,则无法正常提交代码。

文章目录