diff options
Diffstat (limited to 'scripts/bump-tag')
-rwxr-xr-x | scripts/bump-tag | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/scripts/bump-tag b/scripts/bump-tag new file mode 100755 index 00000000..7cb85076 --- /dev/null +++ b/scripts/bump-tag @@ -0,0 +1,43 @@ +#!/bin/sh + +set -e + +git pull + +tagpfx=${tag:="md"} + +last_tag=`git tag -l "${tagpfx}-*"|sort|tail -1` + +echo "Verifying last tag $last_tag:" +(git tag -v $last_tag | grep ^gpg:) || true +# again to not mask exit status of git with grep +git tag -v $last_tag > /dev/null 2>&1 +echo "" + +echo "Differences between tag $last_tag and what you are about to sign:" +PAGER=cat git diff $last_tag..master + +iter=1 +ok= +while test -z "$ok"; do + this_tag=$(date +${tagpfx}-%Y-%m-%d-v`printf "%02d" $iter`) + iter=`expr $iter + 1` + case `(echo $this_tag; echo $last_tag) | sort | tail -1` in + $last_tag) + ;; + $this_tag) + ok=yes + ;; + esac +done + +echo "" +echo "Using new tag $this_tag" +echo ONLY SIGN IF YOU APPROVE OF VERIFICATION AND DIFF ABOVE + +# GITTAGEXTRA is for putting things like "-u 2117364A" + +git tag $GITTAGEXTRA -m bump. -s $this_tag + +git push +git push --tags |