diff options
Diffstat (limited to 'git-tag-script')
-rwxr-xr-x | git-tag-script | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/git-tag-script b/git-tag-script deleted file mode 100755 index 39c3c5398..000000000 --- a/git-tag-script +++ /dev/null @@ -1,82 +0,0 @@ -#!/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" |