#!/usr/bin/env bash set -eof pipefail if [ $# -eq 0 ] then echo "Need to supply a release tag" exit 0 fi TAG=$1 if $(git tag | grep -q $TAG); then echo "Tag $TAG exists, replacing" git tag --delete $TAG git push --delete origin $TAG else echo "New tag $TAG" fi git tag -s -a $TAG -m "Release $TAG" # NOTE(oskarth): Alt. that requires two pushes: git push origin $TAG git push --follow-tags echo "Done"