Categories
Uncategorized

Edit a SVN logmessage on windows

 

Editting logmessages of the Subversion repository on windows is not possible by default. But you can do it by adding a little batch file.

You need to add the following batch file to the \hooks folder of your SVN Repository…

I slightly had to change the file that I found on http://svn.haxx.se/users/archive-2006-03/0107.shtml

rem @ECHO OFF
 
 
set repos=%1
set rev=%2
set user=%3
set propname=%4
set action=%5
 
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Only allow changes to svn:log. The author, date and other revision
:: properties cannot be changed
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
if /I not %propname%==svn:log goto ERROR_PROPNAME
 
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Only allow modifications to svn:log (no addition/overwrite or deletion)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
if /I not %action%==M goto ERROR_ACTION
 
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Make sure that the new svn:log message contains some text.
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
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 properties are not allowed. >&2
goto ERROR_EXIT
 
:ERROR_PROPNAME
echo Only changes to svn:log revision properties 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