git/templates/hooks--update
Junio C Hamano 86b13da46c scripts: equality test '==' is not portable.
On NetBSD 3 we trigger an error:

    [: ==: unexpected operator

Double-equal is accepted by bash built-in '[' and bash(1) suggests
using '=' for strict POSIX compliance (test(1) from coreutils does not
mention '==').  Eradicate their uses everywhere.

[jc: Somebody with a pseudonym kindly sent a message to let
 me know about the problem privately; I do not have access to a NetBSD
 box.]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-09-02 10:53:15 -07:00

32 lines
678 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")
case "$base" in
"$2")
echo "New commits:"
;;
*)
echo "Rebased ref, commits from common ancestor:"
;;
esac
fi
git-rev-list --pretty "$3" "^$base"
fi |
mail -s "Changes to ref $1" "$recipient"
exit 0