The master branch is used for releases and points to the latest tagged commit. The current version number is maintained in abm/VERSION. The dev branch is used for development.
You can use the bin/bump.sh script to update the version number as needed. Run bin/bump.sh --help for more information.
To perform a release, follow these steps
- Merge the
devbranch intomaster.git checkout mastergit merge dev - Update the version number in
abm/VERSION.bin/bump.sh release - Commit and push the changes to
origin master.git add abm/VERSIONgit commit -m "Release $(cat abm/VERSION)"git push origin master - Use the
makecommand to build and deploy the release.make clean build deploy tag
Thedeploygoal deploysgxabmto PyPi. Thetaggoal tags the current commit using the version defined inabm/VERSIONand creates a release on GitHub using thebin/tag.shscript. - Switch back to the
devbranch and merge themasterbranch intodev.git checkout devgit merge master - Update the version number in
abm/VERSIONto the next dev version and push toorigin dev.bin/bump.sh [major|minor|patch]git add abm/VERSIONgit commit -m "Bump version to $(cat abm/VERSION)"git push origin dev
The [major|minor|patch] parameters specifies which portion of the version number will be incremented. - [Optional] use the
bin/move_issues.shscript to move all open issues from the current milestone to the next milestone. For example, to move all issues from the 2.10 milestone to the 2.11 milestone use:bin/move_issues.sh --from 2.10 --to 2.11
If the--tomilestone does not exist it will be created.
To perform a scripted release you can use the bin/release.sh [major|minor|patch] script. This script will perform all of the above steps. If one of [major|minor|patch] is not specified the minor portion of the version number will be incremented. Run bin/release.sh --help for more information.