VisualSVN预提交规则

时间:2010-05-27 10:15:25

标签: svn batch-file visualsvn-server svn-hooks

在VisualSVN Server中使用此挂钩,将其作为pre-commit.bat添加到Repository / hooks文件夹中。

我的问题是如何添加注释必须始终以数值开头的规则?我希望评论的第一部分始终是来自错误跟踪器的问题编号。例如。 “123 - 此提交修复了问题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 个答案:

答案 0 :(得分:2)

尝试使用正则表达式:

findstr "^[0-9]"

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