Tuesday, 17 June 2014

How to prevent subversion commits without comments

I try to keep my posts short and this one is short as well.

You can have following script in a batch file and can be run on SVN Server


@echo off
rem http://stackoverflow.com/questions/1928023/how-can-i-prevent-subversion-commits-without-comments
::
:: Stops commits that have empty log messages.
::

@echo off

setlocal

rem Subversion sends through the path to the repository and transaction id
set REPOS=%1
set TXN=%2

rem check for an empty log message
svnlook log %REPOS% -t %TXN% | findstr . > nul
if %errorlevel% gtr 0 (goto err) else exit 0

:err
echo. 1>&2
echo Your commit has been blocked because you didn't give any log message 1>&2
echo. 1>&2
echo If your commit is related to a story/bug, please use the following format: 1>&2
echo #^ ^ ^ 1>&2
echo     #^ ^ ^ 1>&2
echo. 1>&2
echo Otherwise please write a log message describing the purpose of your changes and 1>&2
echo then try committing again. -- Thank you 1>&2
exit 1

No comments:

Post a Comment