Preparing a Release

Semantic Versioning

Releases are managed via annotated git tags. Tags must follow the Semantic Versioning scheme.

Performing a Release

git checkout ${COMMIT}
git tag -a v${MAJOR}.${MINOR}.${PATCH} -m "Release v${MAJOR}.${MINOR}.${PATCH}"
git push --tags
make push

e.g.

git tag -a v0.1.0 -m "Release v0.1.0"

Performing a Prerelease

git checkout ${COMMIT}
git tag -a v${MAJOR}.${MINOR}.${PATCH}-${PRERELEASE} -m "Prerelease v${MAJOR}.${MINOR}.${PATCH}-${PRERELEASE}"
git push --tags
make push

e.g.

git tag -a v0.1.0-alpha.0 -m "Prerelease v0.1.0-alpha.0"