diff options
author | Junio C Hamano <junkio@cox.net> | 2007-01-20 21:47:41 +0300 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-01-21 06:19:12 +0300 |
commit | 453c1e857534f90b88367f96fc8ca1e7841f9400 (patch) | |
tree | c81fdca0fffefd54c3d4e7e577c3012647c649e6 /git-tag.sh | |
parent | 68025633e352264898de44ec4856552d9a3abece (diff) |
git-tag -d: allow deleting multiple tags at once.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-tag.sh')
-rwxr-xr-x | git-tag.sh | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/git-tag.sh b/git-tag.sh index ecb9100e4b..94499c9b36 100755 --- a/git-tag.sh +++ b/git-tag.sh @@ -63,12 +63,21 @@ do ;; -d) shift - tag_name="$1" - tag=$(git-show-ref --verify --hash -- "refs/tags/$tag_name") || - die "Seriously, what tag are you talking about?" - git-update-ref -m 'tag: delete' -d "refs/tags/$tag_name" "$tag" && - echo "Deleted tag $tag_name." - exit $? + had_error=0 + for tag + do + cur=$(git-show-ref --verify --hash -- "refs/tags/$tag") || { + echo >&2 "Seriously, what tag are you talking about?" + had_error=1 + continue + } + git-update-ref -m 'tag: delete' -d "refs/tags/$tag" "$cur" || { + had_error=1 + continue + } + echo "Deleted tag $tag." + done + exit $had_error ;; -v) shift |