1. 程式人生 > >設定SVN伺服器允許修改日誌

設定SVN伺服器允許修改日誌

在使用SVN進行程式碼版本提交時,經常設定強制填寫日誌以便記錄沒次修改的內容,當時有時候需要修改log, 這個時候需要做下配置:

在版本庫的hooks目錄下加入一個批處理檔案:pre-revprop-change.bat

內容如下,每行若存在空格,必須進行刪除

@ECHO OFF

:: Set all parameters. Even though most are not used, in case you want to add
:: changes that allow, for example, editing of the author or addition of log messages.
set repository=%1
set revision=%2
set userName=%3
set propertyName=%4
set action=%5


:: Only allow the log message to be changed, but not author, etc.
if /I not "%propertyName%" == "svn:log" goto ERROR_PROPNAME


:: Only allow modification of a log message, not addition or deletion.
if /I not "%action%" == "M" goto ERROR_ACTION


:: Make sure that the new svn:log message is not empty.
set bIsEmpty=true
for /f "tokens=*" %%g in ('find /V ""') do (
set bIsEmpty=false
)
if "%bIsEmpty%" == "true" goto ERROR_EMPTY


goto :eof


:ERROR_EMPTY
echo Empty svn:log messages are not allowed. >&2
goto ERROR_EXIT


:ERROR_PROPNAME
echo Only changes to svn:log messages are allowed. >&2
goto ERROR_EXIT


:ERROR_ACTION
echo Only modifications to svn:log revision properties are allowed. >&2
goto ERROR_EXIT


:ERROR_EXIT
exit /b 1