I'd like to come up with a consistent versioning scheme for Terminix that addresses the following:
a. Differentiate between release versions and code in the master branch
b. Differentiate between beta and release versions
c. Update version numbers to reflect major changes in git for those using git based packages like terminix-git in Arch and provide a hint to packagers when to update version numbers.
I need to put some thought into a scheme, but if folks are aware of applications using a scheme that works well feel free to let me know.
I vote for semver.
Stable 1.4.0
Release Candidate 1.4.0-rc.2
Beta / Alphas 1.4.0-beta.3
You can release every day.
1.4.0-beta.15 Still makes sense
Dont do even / odd for stable / unstable. It is just confusing.
Definitely SemVer 2.0.0.
For list point _a._ you should consider to change the repository branching model to gitflow. The master branch should then only be used for releases and represents the stable branch of the project. The develop branch is the branch the latest code lives in and every feature/*/bugfix/*/improvement/*/task/* etc. branches should be merged into.
Semantic versioning it is. No plans to change to gitflow, but I'll keep in mind if my needs change.
Most helpful comment
I vote for semver.
Stable 1.4.0
Release Candidate 1.4.0-rc.2
Beta / Alphas 1.4.0-beta.3
You can release every day.
1.4.0-beta.15 Still makes sense
Dont do even / odd for stable / unstable. It is just confusing.