#!/bin/sh setvar USAGE = '''' setvar SUBDIRECTORY_OK = ''Yes'' source git-sh-setup setvar verbose = '' while test $# != 0 { case (1) { -v|--v|--ve|--ver|--verb|--verbo|--verbos|--verbose { setvar verbose = 't' } * { break } } shift } if test "$Argc" != "1" { usage } setvar type = "$(git cat-file -t "$1" 2>/dev/null)" || die "$1: no such object." test $type = tag || die "$1: cannot verify a non-tag object of type $type." case (verbose) { t { git cat-file -p $1 | sed -n -e '/^-----BEGIN PGP SIGNATURE-----/q' -e p } } trap 'rm -f "$GIT_DIR/.tmp-vtag"' 0 git cat-file tag $1 >"$GIT_DIR/.tmp-vtag" || exit 1 sed -n -e ' /^-----BEGIN PGP SIGNATURE-----$/q p ' <"$GIT_DIR/.tmp-vtag" | gpg --verify "$GIT_DIR/.tmp-vtag" - || exit 1 rm -f "$GIT_DIR/.tmp-vtag"