Skip to main content

Tagging

Semantic Versioning is all about releases, not builds. This means that the version only increases after you release.

Following are the standards that should be followed while tagging releases:

  • Every release should have a tag.
  • You can tag from any long running branch ( dev, qa, staging, master). However, we strictly follow tagging from master branch.
  • Tag name should follow the major.minor.patch_ naming conventions as suggested by Semantic Versioning
  • The tag for a version is in "X.Y.Z" format where,
    • Z is hot-fixes and patch release. If the release includes hot-fixes and patches, we increment this value by 1. Example : "2.7.1", "2.7.2"
    • Y includes major feature releases. If the release includes a major feature which is going to production for the first time we increase this value by 1. Example: "2.8.0", "2.9.0"
    • X is increased when there is a major change in the system which affects the entire application flow or UI/UX(flow) of a system. Example: "3.0.0", "4.0.0" .