git/templates/hooks--update
Josef Weidendorfer c65a9470fb [PATCH] Fixed/Extended example for update hook
Add sample code to distinguish --force rebased head and simple
fast-forward.  At the same time fixes a real bug; the "new ref"
path was using a wrong parameter.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15 03:00:21 -07:00

28 lines
668 B
Bash

#!/bin/sh
#
# An example hook script to mail out commit update information.
# Called by git-receive-pack with arguments: refname sha1-old sha1-new
#
# To enable this hook:
# (1) change the recipient e-mail address
# (2) make this file executable by "chmod +x update".
#
recipient="commit-list@mydomain.xz"
if expr "$2" : '0*$' >/dev/null
then
echo "Created a new ref, with the following commits:"
git-rev-list --pretty "$3"
else
$base=$(git-merge-base "$2" "$3")
if [ $base == "$2" ]; then
echo "New commits:"
else
echo "Rebased ref, commits from common ancestor:"
fi
git-rev-list --pretty "$3" "^$base"
fi |
mail -s "Changes to ref $1" "$recipient"
exit 0