svn 提交时强制注释、不允许指定的文件类型的钩子写法

目前是win下的。

在当前代码仓库的hooks文件夹下,建立pre-commit.bat。内容如下:

字符串”D:\Program Files\VisualSVN Server\bin“为svn服务器的安装目录,如此即可。
字符串:".........." 为10个点, 也可理解为字符数目。


@echo off
set SVN_BINDIR="D:\Program Files\VisualSVN Server\bin"
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
rem 过滤文件类型
%SVN_BINDIR%\svnlook changed -t "%TXN%" "%REPOS%" | findstr "\.db$"
if %errorlevel% EQU 0 (goto SuffixError)
exit 0
:SuffixError
echo 含有禁止存在于受控库的文件类型,如:db等。受控库良好的性能需要大家共同维护,谢谢! 1>&2
exit 1
:err
echo 不允许空日志,提交中断(需要不小于10个字符的日志)! 1>&2
exit 1

posted @ 2019-03-21 11:55  lcinx  阅读(867)  评论(0编辑  收藏  举报