views:

111

answers:

1

Using this hook with VisualSVN, added to the Repository/hooks folder as pre-commit.bat

My question is how do I add the rule that a comment must always start with a numeric value? I want the first part of the comment to always be the issue number from a bug tracker. Eg. "123 - this commit fixes issue 123"

@echo off
::    
:: 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 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
+1  A: 

Try following regular expression:

findstr "^[0-9]"

I.e.

svnlook log %REPOS% -t %TXN% | findstr "^[0-9] > nul
if %errorlevel% gtr 0 (goto err) else exit 0
Ivan Zhakov
worked perfectly thanks
cfdev9