]>
Commit | Line | Data |
---|---|---|
f336e71f | 1 | #!/bin/sh |
d6ea70af | 2 | |
34970121 FK |
3 | USAGE='<tag>' |
4 | SUBDIRECTORY_OK='Yes' | |
5 | . git-sh-setup | |
f336e71f | 6 | |
a0f15fa5 JH |
7 | verbose= |
8 | while case $# in 0) break;; esac | |
9 | do | |
10 | case "$1" in | |
11 | -v|--v|--ve|--ver|--verb|--verbo|--verbos|--verbose) | |
12 | verbose=t ;; | |
13 | *) | |
14 | break ;; | |
15 | esac | |
16 | shift | |
17 | done | |
18 | ||
34970121 FK |
19 | if [ "$#" != "1" ] |
20 | then | |
a0f15fa5 | 21 | usage |
34970121 | 22 | fi |
d165fa14 | 23 | |
5a6850e8 PBG |
24 | type="$(git-cat-file -t "$1" 2>/dev/null)" || |
25 | die "$1: no such object." | |
f336e71f | 26 | |
5a6850e8 PBG |
27 | test "$type" = tag || |
28 | die "$1: cannot verify a non-tag object of type $type." | |
29 | ||
a0f15fa5 JH |
30 | case "$verbose" in |
31 | t) | |
32 | git-cat-file -p "$1" | | |
33 | sed -n -e '/^-----BEGIN PGP SIGNATURE-----/q' -e p | |
34 | ;; | |
35 | esac | |
36 | ||
d6ea70af JH |
37 | git-cat-file tag "$1" >"$GIT_DIR/.tmp-vtag" || exit 1 |
38 | cat "$GIT_DIR/.tmp-vtag" | | |
39 | sed '/-----BEGIN PGP/Q' | | |
40 | gpg --verify "$GIT_DIR/.tmp-vtag" - || exit 1 | |
41 | rm -f "$GIT_DIR/.tmp-vtag" | |
42 |