GitHub
Fully supported — release PRs, changelog, tagging-on-merge, and brel init all work on GitHub. GitHub is also brel’s default provider.
Prerequisites
Section titled “Prerequisites”gitavailable wherever brel runs.- For local
brel release-prruns: theghCLI and a token inGH_TOKENorGITHUB_TOKEN. In the generated workflow,GH_TOKEN: ${{ github.token }}is set automatically andghis preinstalled on GitHub runners.
-
Install brel and create a
brel.tomlat the repository root:provider = "github"default_branch = "main"[release_pr.version_updates]"package.json" = ["version"] -
Generate the managed workflow:
Terminal window brel validatebrel init --yesThis writes
.github/workflows/release-pr.yml(name configurable viaworkflow_file). Rerunbrel initafter config changes to regenerate it;--dry-runshows the diff first. -
Commit both files and push to
main. From now on, every push tomainrunsbrel release-prand keeps a release PR up to date. -
Merge the release PR when you’re ready to ship.
What the generated workflow does
Section titled “What the generated workflow does”The managed release-pr.yml (marked # managed-by: brel):
- Triggers on pushes to your default branch and on
workflow_dispatch. - Checks out with full history (
fetch-depth: 0— required for version computation). - Installs brel with the
better-releases/setup-brel@v1action. - Installs the changelog runtime when enabled:
git-cliffviataiki-e/install-action, or Node 24 for changelogen. - Runs
brel changelogthenbrel release-prwithGH_TOKEN: ${{ github.token }}.
Tagging on merge
Section titled “Tagging on merge”If you enable [release_pr.tagging] and rerun brel init, the workflow gains a pull_request: closed trigger and a release-tag job that runs brel tag when a managed release PR merges.
Running locally
Section titled “Running locally”git-cliff --version # or ensure npx is available for changelogenbrel changelogGH_TOKEN=... brel release-prSee Environment Variables for the full list.