Creating new releases versions - geoscience-community-codes/GISMO GitHub Wiki
We will endeavor to follow the Git Branching Model described by Vincent Driessen at http://nvie.com/posts/a-successful-git-branching-model/.
In short:
- master branch should only contain tagged versions / releases
- develop branch is basis for all new development
- feature (e.g. feature/seismic_trace_toolkit) branches are created from develop branch
- release branches (e.g. release_1.1.1) are created from develop branch, and once started, no new features are added - just bug fixing
- once release branch in finalized, it is merged into master and tagged as a new version (and then documented at https://github.com/geoscience-community-codes/GISMO/releases). It is also merged into develop (which may have changed since release branch was first made, so may have some manual merging to do)
- release branch can then be removed
- feature branches may develop over several release cycles before they are reading to merge back into develop and become part of a release
Git tagging is described here.
Semantic release naming (MAJOR.MINOR.BUGFIX) is described at http://semver.org/