| #!/bin/bash |
| # |
| # script to create a jgit release |
| |
| # uncomment to switch on trace |
| #set -x |
| |
| # abort if a command hits an error |
| set -e |
| |
| export basePath=$(cd "$(dirname "$0")"; pwd) |
| echo basePath $basePath |
| |
| if [ -z $1 ]; then |
| echo " |
| Usage: |
| $ release.sh <release version tag> |
| |
| e.g. release.sh v3.4.0.201405051725-m7 |
| " |
| exit |
| fi |
| |
| # trimmed git status |
| export status=$(git status --porcelain) |
| |
| if [ ! -z "$status" ]; |
| then |
| echo " |
| working tree is dirty -> can't create release |
| " |
| exit |
| fi |
| |
| MSG="JGit $1" |
| |
| # tag release |
| git tag -s -m "$MSG" $1 |
| |
| # update version numbers |
| ./tools/version.sh --release |
| |
| # commit changed version numbers |
| git commit -a -s -m "$MSG" |
| |
| # move the tag to the version we release |
| git tag -sf -m "$MSG" $1 |
| |
| # run the build |
| mvn clean install -T 1C |
| mvn clean install -f org.eclipse.jgit.packaging/pom.xml |