经常查看svn上的代码日志,发现很多都是没有提交注释要不然就是描述不够清晰,想到可不可以限制提交人必须添加注释呢。google了一下,发现svn提供了另外一种机制来限制svn的各种操作:hook ,俗称钩子。

具体位置在%repository\hooks下。有很多,我们要用到的是pre-commit这个-提交之前做的检查

在hooks下添加一个pre-commit.bat文件,文件内容如下

@echo off

set SVN_BINDIR=d:\program\Subversion\bin

setlocal

set REPOS=%1

set TXN=%2

rem check that logmessage contains at least 10 characters

%SVN_BINDIR%\svnlook log "%REPOS%" -t "%TXN%" | findstr ".........." > nul

if %errorlevel% gtr 0 goto err

exit 0

:err

echo 请输入最少10个字符的描述! (eg:fix/update/add/delete:由于xxx造成的xxx问题) 1>&2

exit 1

SVN_BINDIR指向的是你的svn安装路
findstr ".........." 10个 . 代表10个字
echo 请...这些代表你的提示信息

Comments
Write a Comment