diff --git a/.version b/.version new file mode 100644 index 0000000..6753471 --- /dev/null +++ b/.version @@ -0,0 +1 @@ +2.0.0-SNAPSHOT diff --git a/release.sh b/release.sh new file mode 100755 index 0000000..219af38 --- /dev/null +++ b/release.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +version=$(cat .version) + +release_version=${version%%-SNAPSHOT} +new_version=$(echo $release_version+0.1 | bc) + +[[ $? -ne 0 ]] && echo 'Error exiting.' && exit 1 + +snapshot_version=${new_version}-SNAPSHOT + +cat < ./.version +git add ./.version +git commit -m "[release] prepare release v$release_version" +git tag v$release_version +echo $snapshot_version > ./.version +git add ./.version +git commit -m "[release] prepare for next development iteration" + +echo merge the version back into develop +git checkout develop +git merge --no-ff -m "[release] merge release/$release_version into develop" release/$release_version + +git checkout master +echo merge the version back into master but use the tagged version instead of the release/$releaseVersion HEAD +git merge --no-ff -m "[release] merge previous version into master to avoid the increased version number" release/$release_version~1 + +echo get back on the develop branch +git checkout develop +echo finally push everything +git push origin develop master +git push --tags +echo removing the release branch +git branch -D release/$release_version