返回> 网站首页
Svn修改日志的方法
yoours2011-05-10 14:26:33
简介一边听听音乐,一边写写文章。
摘自:http://hi.baidu.com/tsd3698/blog/item/2539164525db5c3c879473f6.html
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least 5 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
REM SVN pre-revprop-change hook allows edit of logmessages from TSVN
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
摘自:http://www.cnblogs.com/greatqn/articles/1272769.html
版本库生成后,hooks目录下就存在一些钩子脚本的模板,用户可以作为参考。把pre-revprop-change.tmpl复制为pre-revprop-change.bat,再修改里面的脚本,钩子就设置好了。
for /f "usebackq" %%k in (`svnlook author %1 -r%2`) do @set var=%%kif "%3" == "%var%" goto test
if "%3" == "li" goto test
exit 1
:test
if "%4" == "svn:log" exit 0
echo Property '%4' cannot be changed >&2
exit 1
只允许用户修改自己的svn日志的钩子脚本: