Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. One hotfix branch exists per minor release. That is, hotfix-1.0.x is used for (eg) 1.0.1 and 1.0.2. While these will typically branch from and merge into master, they may also branch from any release tag, and may not merge into master if master has already moved on to a new minor (or major) release. Both master and hotfix-* should be deployable at all times.
  2. Release branches are not currently used. All features for release merge into develop, which eventually merges into master to create a release tag.
  3. Feature branches (topic branches) are optional and should be named for the corresponding JIRA issue (eg: feature-co500). In general, feature branches are used when merging directly into develop is undesirable, perhaps because the feature is experimental. Features may also be used when a priority enhancement is made for a specific deployment, and the enhancement is required before the next scheduled minor release.

Summary

BranchDescriptionBranches FromMerges To
masterCurrent release or release candidate--
developNew features scheduled for next minor release-master, hotfix-* (if appropriate)
hotfix-*Bug fixes and minor changes scheduled for next bugfix releasemastermaster, develop
feature-*Experimental or prioritized featuresmaster for prioritized development, otherwise any suitable branchdevelop, hotfix-* (if appropriate)

 

References