This is a .bat file to require there is a comment. It checks for the existence of at least one character in the comment.
@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
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 enter a comment. 1>&2
echo Write a log message describing the changes made and try again. 1>&2
echo Thanks 1>&2
exit 1
This file sits in the /hooks folder of the repository, named pre-commit.bat. If you need a minimum amount of characters, the line to modify is
svnlook log %REPOS% -t %TXN% | findstr . > nul
So if you wanted a minimum of 10 characters, you need to have 10 .’s rather than just one
svnlook log %REPOS% -t %TXN% | findstr .......... > nul
More advanced options for the findstr command will let you do fancier checks (certain character sets, ect)