SVN设置pre-commit和pre-revprop-change钩子

u=3193505539,1488230918&fm=21&gp=0.jpg

在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下的,不能直接使用!

版权所有:《IT技术宅》 => 《SVN设置pre-commit和pre-revprop-change钩子
本文地址:http://www.qq-tv.cn/?post=8
除非注明,文章均为 《IT技术宅》 原创,欢迎转载!转载请注明本文地址,谢谢。