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?

1 Answer 1


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.

  • It was done in a branch, see vermiculus/stack-mode#9, but the PR changed directions as it evolved. Would you have another branch off of this one? In theory, we could create a branch now at HEAD, roll it back to the tag, effectively archive the branch, and delete the tag, correct? Nov 5, 2014 at 5:16
  • That's an interesting strategy, I guess this could work.
    – pgenfer
    Nov 5, 2014 at 5:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.