This helps me make releases and probably won't help you, but why not be transparent about things and tools!
14 lines
516 B
Bash
Executable File
14 lines
516 B
Bash
Executable File
#!/bin/bash
|
|
# TODO: don't run if current HEAD is already tagged (ensure this is idempotent)
|
|
# take current HEAD with new version
|
|
v=`git describe --match '[0-9]*\.[0-9]*\.[0-9]*' --tags --abbrev=0`
|
|
t=`echo "${v%.*}.$((${v##*.}+1))"` # increment version
|
|
echo "Version $t is now tagged!"
|
|
echo "Pushing $t to origin..."
|
|
echo "Press ^C within 3s to abort."
|
|
sleep 3s
|
|
echo "release: tag $t" | git tag --file=- --sign $t
|
|
git push origin $t
|
|
git diff --stat "$v" "$t"
|
|
if which contrib.sh 2>/dev/null; then contrib.sh "$v"; fi
|