#!/bin/sh
# Copyright (c) 2005 Linus Torvalds

. git-sh-setup-script || die "Not a git archive"

usage () {
    echo >&2 "Usage: git-tag-script [-a | -s] [-f] [-m "tag message"] tagname"
    exit 1
}

annotate=
signed=
force=
message=
while case "$#" in 0) break ;; esac
do
    case "$1" in
    -a)
	annotate=1
	;;
    -s)
	annotate=1
	signed=1
	;;
    -f)
	force=1
	;;
    -m)
    	annotate=1
	shift
	message="$1"
	;;
    -*)
        usage
	;;
    *)
	break
	;;
    esac
    shift
done

name="$1"
[ "$name" ] || usage
if [ -e "$GIT_DIR/refs/tags/$name" -a -z "$force" ]; then
    die "tag '$name' already exists"
fi
shift

object=$(git-rev-parse --verify --default HEAD "$@") || exit 1
type=$(git-cat-file -t $object) || exit 1
tagger=$(git-var GIT_COMMITTER_IDENT) || exit 1

trap 'rm -f .tmp-tag* .tagmsg .editmsg' 0

if [ "$annotate" ]; then
    if [ -z "$message" ]; then
        ( echo "#"
          echo "# Write a tag message"
          echo "#" ) > .editmsg
        ${VISUAL:-${EDITOR:-vi}} .editmsg || exit
    else
        echo "$message" > .editmsg
    fi

    grep -v '^#' < .editmsg | git-stripspace > .tagmsg

    [ -s .tagmsg ] || exit

    ( echo -e "object $object\ntype $type\ntag $name\ntagger $tagger\n"; cat .tagmsg ) > .tmp-tag
    rm -f .tmp-tag.asc .tagmsg
    if [ "$signed" ]; then
	me=$(expr "$tagger" : '\(.*>\)') &&
	gpg -bsa -u "$me" .tmp-tag &&
	cat .tmp-tag.asc >>.tmp-tag ||
	die "failed to sign the tag with GPG."
    fi
    object=$(git-mktag < .tmp-tag)
fi

mkdir -p "$GIT_DIR/refs/tags"
echo $object > "$GIT_DIR/refs/tags/$name"
