Skip to content

Commit

Permalink
contrib/hooks/post-receive-email: Make revision display configurable
Browse files Browse the repository at this point in the history
Add configuration option hooks.showrev, letting the user override how
revisions will be shown in the commit email.

Signed-off-by: Pete Harlan <pgit@pcharlan.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Pete Harlan authored and Junio C Hamano committed Nov 4, 2008
1 parent 4471649 commit b0a7d11
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion contrib/hooks/post-receive-email
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,12 @@
# hooks.emailprefix
# All emails have their subjects prefixed with this prefix, or "[SCM]"
# if emailprefix is unset, to aid filtering
# hooks.showrev
# The shell command used to format each revision in the email, with
# "%s" replaced with the commit id. Defaults to "git rev-list -1
# --pretty %s", displaying the commit id, author, date and log
# message. To list full patches separated by a blank line, you
# could set this to "git show -C %s; echo".
#
# Notes
# -----
Expand Down Expand Up @@ -610,7 +616,16 @@ show_new_revisions()
fi

git rev-parse --not --branches | grep -v $(git rev-parse $refname) |
git rev-list --pretty --stdin $revspec
if [ -z "$custom_showrev" ]
then
git rev-list --pretty --stdin $revspec
else
git rev-list --stdin $revspec |
while read onerev
do
eval $(printf "$custom_showrev" $onerev)
done
fi
}


Expand Down Expand Up @@ -650,6 +665,7 @@ recipients=$(git config hooks.mailinglist)
announcerecipients=$(git config hooks.announcelist)
envelopesender=$(git config hooks.envelopesender)
emailprefix=$(git config hooks.emailprefix || echo '[SCM] ')
custom_showrev=$(git config hooks.showrev)

# --- Main loop
# Allow dual mode: run from the command line just like the update hook, or
Expand Down

0 comments on commit b0a7d11

Please sign in to comment.