0

我是 SVN 的新手,我正在尝试编写一个 pre-commit 钩子来检查模式上的提交消息^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”之类的消息的 CL。问题是什么?

先感谢您!

4

1 回答 1

2

下面的脚本只允许使用所需的模式 ^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
于 2012-07-24T16:24:52.410 回答