bumper
is a tool for enforcing Semantic Versioning.
- Written in pure POSIX shellscript,
bumper
should work on any Unix-like system. git
- A
VERSION
file exists at the root of your repository. - You use some manner of branch-oriented workflow, with
develop
as your trunk.
Using bumper
is simple!
bumper
feature/documentation contains no modifications to VERSION Given a version number MAJOR.MINOR.PATCH, increment the: - MAJOR version when you make incompatible API changes, - MINOR version when you add functionality in a backwards-compatible manner, and - PATCH version when you make backwards-compatible bug fixes. Current Version is 0.0.0 Which number should we bump today? MAJOR MINOR PATCH:
If available, bumper
will present a nicer UI with yank
or dialog
, but
these are optional.
bumper
is intended for use in a pre-push
hook, with a tool like
overcommit
. The intended workflow is:
- Work on your branch.
- Bump
VERSION
appropriate before pushing todevelop
. - Automated tests are run by CI platform of choice.
- If all goes well, the CI system merges develop into
master
, and tags the merge commit according to theVERSION
file.
bumper
is available under the MIT License. See LICENSE.txt
for the full text.