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 に答える