Shameless plug: this question is for StackMode – a StackExchange client for GNU Emacs 24+.
The product I’m working on, version-controlled with git
, is a desktop application with an innately exposed API. Naturally, we want to adopt Semantic Versioning to the best of our ability. (Hopefully, perfectly and without error.)
As I understand it, semantic versions are implemented in git
as tagged commits. This is a convenient way to see all releases of a project, etc. etc. However, we are still fairly early on in development. Prototype functionality was implemented and committed that did not survive review (for reasons that are irrelevant here), but the functionality will almost certainly be requested in the future. We wish to bookmark the state of the repository at that time.
Are any patterns just ignored by semantic versioning tools? What patterns are allowed as these bookmarks, or is there a better way to achieve the same goal?
Especially when using git I would suggest using different branches for implementing prototype functionality (feature branches).
The review process could then be executed on the different branches and in case the new prototype will be needed later in the master branch, it can easily be merged to the main development branch.
The main versioning would still only happen by tagging the master branch, while tagging the prototype branches could also be possible (in case a prototype would have different development stages).
The prototype branches could exist as long as the new features are either integrated in the master branch or thrown away.
2