Как добавить комментарий фиксации в хук после фиксации Subversion

У меня есть рабочий Subversion Post Commit, который работает нормально. Как мне добавить комментарии, сделанные пользователем, выполняющим коммит?

Мой код

REPOS="$1"
REV="$2"

AUTHOR="$(svnlook author -r $REV $REPOS)"

mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf

# Script to send simple email when SVN is updated

# email subject
SUBJECT="[Project Name goes here] - new commit made in Subversion"

# Email To 
EMAIL="[email addresses go here]"

# Date and time
DATE="$(date)"

# Email text/message
EMAILMESSAGE="/tmp/buildingcontrolmessage.txt"
echo "The commit happened: " $DATE > $EMAILMESSAGE
echo "Repository: " $1 >> $EMAILMESSAGE
echo "Reveision: " $2 >> $EMAILMESSAGE
echo "The commit was made by: $AUTHOR"  >> $EMAILMESSAGE

# send an email using /bin/mail

/bin/mail -s "$SUBJECT" "$EMAIL" < $EMAILMESSAGE

Я просто хотел бы добавить строку в электронном письме, чтобы сказать:

echo "Comment: $MSG"  >> $EMAILMESSAGE

Но я не уверен, как получить сообщение от коммита.

Спасибо за любую помощь и совет.


person benb3342    schedule 09.04.2014    source источник


Ответы (2)


Вы должны проанализировать сообщение коммита из вывода информация svnlook. Документация:

Напечатайте автора, отметку даты, размер сообщения журнала (в байтах) и сообщение журнала, за которым следует символ новой строки.

person mellow    schedule 09.04.2014

На всякий случай, если другие люди захотят сделать то же самое - вот что я сделал в конце:

REPOS="$1"
REV="$2"
AUTHOR="$(svnlook author -r $REV $REPOS)"
MESSAGE="$(svnlook log $REPOS)"


mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf

# Script to send simple email when SVN is updated

# email subject
SUBJECT="New commit made in Subversion"

# Email To ?
EMAIL="[email address or addresses]"

# Date and time
DATE="$(date)"

# Email text/message
EMAILMESSAGE="/tmp/emailmessagemessage.txt"
echo "The commit happened: " $DATE > $EMAILMESSAGE
echo "Repository: " $1 >> $EMAILMESSAGE
echo "Reveision: " $2 >> $EMAILMESSAGE
echo "The commit was made by: $AUTHOR"  >> $EMAILMESSAGE
echo "Comment: $MESSAGE" >> $EMAILMESSAGE

# send an email using /bin/mail
/bin/mail -s "$SUBJECT" "$EMAIL" < $EMAILMESSAGE
person benb3342    schedule 10.04.2014
comment
хорошо, это намного проще... :) но, возможно, также добавьте к вызову `-r $REV`. - person mellow; 10.04.2014