Svn 预提交钩子不检查模式

Svn 预提交钩子不检查模式,svn,pre-commit-hook,Svn,Pre Commit Hook,我是SVN的新手,我正在尝试编写一个预提交钩子来检查模式^ABC-[0-9]+|^CONFIG:+|^MERGE:上的提交消息。我正在使用以下代码: if [ `/svn/bin/svnlook log -t "$TXN" "$REPOS" | egrep -v "^ABC-[0-9]+|^CONFIG:+|^MERGE:"` ]; then echo "" exit 1 fi; 但它不能像我需要的那样工作,而且带有“Test-Test”之类消息的CLs无论如何都可以提

我是SVN的新手,我正在尝试编写一个预提交钩子来检查模式
^ABC-[0-9]+|^CONFIG:+|^MERGE:
上的提交消息。我正在使用以下代码:

if [ `/svn/bin/svnlook log -t "$TXN" "$REPOS" | egrep -v "^ABC-[0-9]+|^CONFIG:+|^MERGE:"` ];
then
    echo ""
        exit 1
fi;
但它不能像我需要的那样工作,而且带有“Test-Test”之类消息的CLs无论如何都可以提交。有什么问题


提前谢谢你

下面的脚本只允许使用所需的模式^ABC-[0-9]+$| ^CONFIG:| ^MERGE进行提交:

REPOS="$1"
TXN="$2"

# Make sure that the log message contains some text.
SVNLOOK=/usr/bin/svnlook
$SVNLOOK log -t "$TXN" "$REPOS" | \
 grep -E "^ABC-[0-9]+$|^CONFIG:|^MERGE:" > /dev/null || exit 1

# Exit on all errors.
set -e


# All checks passed, so allow the commit.
exit 0

问题是grep的结果,即字符串。以下将起作用:$SVNLOOK log-t“$TXN”$REPOS“| egrep-q-v”^ABC-[0-9]+| ^CONFIG:| ^MERGE:“如果[$?-eq 0];