From 285c1ddb721c1ec4834efe0afb16c7d0df47cd5c Mon Sep 17 00:00:00 2001 From: Ted Zlatanov Date: Wed, 1 Sep 2010 21:37:53 -0500 Subject: [PATCH] Put trivia after the diff. Join multiple commit messages in subject. * post-receive: Add modified post-receive hook for Git. Comment. Put the update message after the diff. Join multiple oneline logs into one long subject. --- etc/ChangeLog | 4 +++- etc/post-receive | 14 ++++++++------ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/etc/ChangeLog b/etc/ChangeLog index 30c42b1d1..dd00ded9c 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog @@ -1,6 +1,8 @@ 2010-09-01 Teodor Zlatanov - * post-receive: Add modified post-receive hook for Git. Comment. + * post-receive: Add modified post-receive hook for Git. Comment. Put + the update message after the diff. Join multiple oneline logs into one + long subject. 2010-03-22 Teodor Zlatanov diff --git a/etc/post-receive b/etc/post-receive index 37ec5f9f6..5011f2400 100755 --- a/etc/post-receive +++ b/etc/post-receive @@ -9,7 +9,8 @@ export USER_NAME=$(git log -1 --format=format:%an HEAD) # the remainder is the standard git-core post-receive-email with some changes: # - USER_EMAIL and USER_NAME are used in the header -# - without annotations, we use `git log -1 --format=oneline' to generate the change summary (which could miss multiple changes) +# - the update message is after the diff +# - without annotations, we use `git log --format=oneline' to generate the change summary (joining multiples with semicolons) # Copyright (c) 2007 Andy Parkins # @@ -181,7 +182,7 @@ generate_email() # that we can build from the parameters describe=$(git describe $rev 2>/dev/null) if [ -z "$describe" ]; then - describe=$(git log -1 --format=oneline $rev 2>/dev/null) + describe=$((git log --format=oneline $oldrev...$newrev | perl -e'@p = <>; chomp @p; print join " ; ", @p') 2>/dev/null) fi if [ -z "$describe" ]; then @@ -405,10 +406,6 @@ generate_update_branch_email() echo "" if [ -z "$rewind_only" ]; then - echo "Those revisions listed above that are new to this repository have" - echo "not appeared on any other notification email; so we list those" - echo "revisions in full, below." - echo "" echo $LOGBEGIN show_new_revisions @@ -418,6 +415,11 @@ generate_update_branch_email() # revisions added by this update" message echo $LOGEND + + echo "Those revisions listed above that are new to this repository have" + echo "not appeared on any other notification email; so we listed those" + echo "revisions in full, above." + else echo "No new revisions were added by this update." fi -- 2.25.1