# [PATCH 2/4] update-hook: show the contents of the tag message for annotated tags

4 messages from 2007-03-20 to 2007-03-20. Participants: Andy Parkins, Martin Waitz, Shawn O. Pearce.
Thread: https://gitlist.dev/t/7331

## Andy Parkins, 2007-03-20 10:58

Subject: [PATCH 2/4] update-hook: show the contents of the tag message for annotated tags
Message-ID: <200703201058.38519.andyparkins@gmail.com>
URL: https://gitlist.dev/e/200703201058.38519.andyparkins%40gmail.com

```
The annotated tag points at a commit, for which we show the short log.
However, the tag itself contains a message, possibly release notes or
hand-written change log - whatever it contains is worth showing.  The
tag message is extracted with

  git cat-file tag $newrev | tail -q -n +5

Which is dangerously reliant on the format of the tag object being four
header lines then the message.  I don't like it, but I don't know of any
other way of extracting the message.  It's also missing any kind of
support for the GPG signature.

Signed-off-by: Andy Parkins <andyparkins@gmail.com>
---
 templates/hooks--update |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/templates/hooks--update b/templates/hooks--update
index 1a60773..31e72ca 100644
--- a/templates/hooks--update
+++ b/templates/hooks--update
@@ -231,8 +231,14 @@ case "$refname_type" in
 
 		echo ""
 		echo $LOGBEGIN
-		echo ""
 
+		# Show the content of the tag message; this might contain a change log
+		# or release notes so is worth displaying.  "tail -n +5" is there to
+		# remove the first 4 lines of the tag object, those details have
+		# already been summarised above
+		git cat-file tag $newrev | tail -q -n +5
+
+		echo ""
 		if [ -n "$prevtag" ]; then
 			git rev-list --pretty=short "$prevtag..$newrev" | git shortlog
 		else
-- 
1.5.0.3.402.g0c48

```

## Martin Waitz, 2007-03-20 12:41

Subject: Re: [PATCH 2/4] update-hook: show the contents of the tag message for annotated tags
Message-ID: <20070320124154.GB22773@admingilde.org>
URL: https://gitlist.dev/e/20070320124154.GB22773%40admingilde.org
In-Reply-To: <200703201058.38519.andyparkins@gmail.com>

```
hoi :)

On Tue, Mar 20, 2007 at 10:58:38AM +0000, Andy Parkins wrote:
>   git cat-file tag $newrev | tail -q -n +5
> 
> Which is dangerously reliant on the format of the tag object being four
> header lines then the message.

I think you can split at the blank line after the header.

-- 
Martin Waitz

```

## Andy Parkins, 2007-03-20 15:27

Subject: Re: [PATCH 2/4] update-hook: show the contents of the tag message for annotated tags
Message-ID: <200703201527.15476.andyparkins@gmail.com>
URL: https://gitlist.dev/e/200703201527.15476.andyparkins%40gmail.com
In-Reply-To: <20070320124154.GB22773@admingilde.org>

```
On Tuesday 2007 March 20 12:41, Martin Waitz wrote:

> > Which is dangerously reliant on the format of the tag object being four
> > header lines then the message.
>
> I think you can split at the blank line after the header.

That's a good idea; I can't think of an efficient way of doing that in shell 
script though.  What I need is a 

 grep --everything-after "^$"

:-)


Andy
-- 
Dr Andy Parkins, M Eng (hons), MIET
andyparkins@gmail.com

```

## Shawn O. Pearce, 2007-03-20 15:36

Subject: Re: [PATCH 2/4] update-hook: show the contents of the tag message for annotated tags
Message-ID: <20070320153648.GC1750@spearce.org>
URL: https://gitlist.dev/e/20070320153648.GC1750%40spearce.org
In-Reply-To: <200703201527.15476.andyparkins@gmail.com>

```
Andy Parkins <andyparkins@gmail.com> wrote:
> On Tuesday 2007 March 20 12:41, Martin Waitz wrote:
> 
> > > Which is dangerously reliant on the format of the tag object being four
> > > header lines then the message.
> >
> > I think you can split at the blank line after the header.
> 
> That's a good idea; I can't think of an efficient way of doing that in shell 
> script though.  What I need is a 
> 
>  grep --everything-after "^$"

	sed -e '1,/^$/d'

Portable too.  ;-)

-- 
Shawn.

```
