svn 中commit时必须填写备注信息如何设置
在软件开发团队中总是有人忘记添加备注信息,可以通过下面方式进行设置,从而在commit时强制需要填写备注信息。
在服务端选中需要设置的项目进行设置。
选中项目右键,“所以任务”—>“Mange Hooks”.
选中pre-commit hook,双击或者点击“edit”按钮进行编辑。
备注:start-commit是在通过菜单触发“提交”活动后,弹出“提交”对话框前执行;
pre-commit是在点击“提交”对话框上的“确定”时执行,即真正的提交活动时执行;
post-commit是在提交活动结束时执行。
打开pre-commit hook
添加如下代码即可:
@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 提交信息(备注)不允许为空,请填写信息后重试 1>&2
exit 1
总结:以上方法是针对某以项目进行设置。
还可以通过在hooks文件下设置pre-commit.bat文件(针对所有项目)。
pre-commit.bat文件内容如下:
@echo off
set SVN_BINDIR=d:\Subversion\bin (此处需要修改为你的svn安装目录)
setlocal
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least 10 characters
%SVN_BINDIR%\svnlook log "%REPOS%" -t "%TXN%" | findstr ".........." > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo Empty log message not allowed. Commit aborted! 1>&2
exit 1
还可以在客服端进行设置(针对客户端的用户)。