This project adheres to Semantic Versioning.
- Keep your PR as small as possible, this makes reviewing easier.
- Commits serve a clear purpose and have a fitting commit message.
- Branches are kept up to date by rebasing, preferably.
- PRs are merged by rebasing the commits on top of the target branch.
- Changes are added in
CHANGELOG.md
. Please refrain from using technical terminology, keep it user-friendly. The format is based on Keep a Changelog.
This project uses Gitflow.
- Make sure the version number in
build.gradle
is correct. - Merge
develop
tomain
. - Push a tag with the version number (prefixed with
v
).
After releasing:
- Rename the "Unreleased" section to the correct version number in
CHANGELOG.md
. - Upgrade the version number in
build.gradle
. - Create a new "Unreleased" section in
CHANGELOG.md
.
The build pipeline triggers when a commit is pushed to a branch or pull request.
The release pipeline triggers when a tag is pushed. This will run all the steps that our build pipeline does.
After that succeeds, it will publish to GitHub packages and CreeperHost Maven repository.
The "Unreleased" section in CHANGELOG.md
is parsed and a GitHub release is created with the changelog body and
relevant artifacts.
After that, a Discord and Twitter notification is sent.