Ловушка предварительной фиксации не проверяет шаблон
Я новичок в 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;
Но это не работает так, как мне нужно, и CL с сообщениями типа "Test- test" может быть зафиксирован в любом случае. В чем проблема?
Заранее спасибо!
1 ответ
Сценарий ниже позволяет фиксировать только с необходимым шаблоном ^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