Existe uma maneira de simplificar este gancho de pré-subversão do subversion?

1

Existe uma maneira de simplificar esse gancho de pré-commit? Parece um pouco demais para mim

#!/bin/sh
message='$SVNLOOK log -t "$TXN" "$REPOS"'

# Block any commits which don't reference a ticket
if echo $message | grep -q "re #"
then
    :
elif echo $message | grep -q "references #"
then
    :
elif echo $message | grep -q "refs #"
then
    :
elif echo $message | grep -q "see #"
then
    :
elif echo $message | grep -q "addresses #"
then
    :
else
    echo "Your commit must reference a ticket to be accepted. For example, re #1234"
fi
    
por David 09.09.2011 / 10:16

2 respostas

1

Para isso, você pode usar a variante do gnur ou usar um arquivo padrão:

grep -q --file="matchpatterns.txt" 

que contém todos os padrões que você deseja aceitar:

refs #
addresses #
ticket #
bug #
...

Eu gosto mais disso porque esse tipo de lista tende a se tornar muito rápido, tornando o padrão inline difícil de gerenciar.

    
por 09.09.2011 / 11:07
1

if echo $message | grep -q '\(re\|references\|refs\|see\|addresses\|\) #'

Deve fazer o truque.

    
por 09.09.2011 / 10:58

Tags