SVN设置precommit和prerevpropchange钩子

在SVN中,修改了代码要提交时写好注释是个好习惯,但很多人往往忽略了这一点,所以可以通过设置‍pre-commit钩子来强制要求提交代码时要写注释。在Windows下找到你建立版本库的文件夹中的‍hooks文件夹,新建一个名为‍pre-commit.bat的文件,文件内容如下:
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least 10 characters
svnlook log "%REPOS%" -t "%TXN%" | findstr ".........." > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo Empty log message not allowed. Commit aborted! 1>&2
exit 1
这样就实现了SVN强制注释的功能。
有时我们需要修改注释,这就要设置‍pre-revprop-change钩子了,还是在hooks文件夹中,新建一个名为‍pre-revprop-change.bat的文件,文件内容如下:
setlocal
set REPOS=%1
set REV=%2
set USER=%3
set PROPNAME=%4
set ACTION=%5
if not "%ACTION%"=="M" goto refuse
if not "%PROPNAME%"=="svn:log" goto refuse
goto OK
:refuse
echo Cann't set %PROPNAME%/%ACTION%, only svn:log is allowed 1>&2
endlocal
exit 1
:OK
endlocal
exit 0
这样修改注释的功能也完成了
 
以上内容来自网络,我在配置svn和apache集成的时候发现默认是不能修改日志信息的,用了第二段代码就OK了,系统默认的范例是unix下的,不能直接使用!
原文地址:https://www.cnblogs.com/ventry/p/2432797.html