Release


A small command-line utility to manage CHANGELOG.md written in keepachangelog.com format.
Works nicely on any sized Git repository, even awesome on Monorepo.
Installation
Please download ZIP archive from releases page.
How it works
Run release to show full list of commands and flags.
List all CHANGELOG.md
release target will show you all CHANGELOG.md files recursively.
release target
release target --dir path/to/entrypoint
release t -d path/to/entrypoint
See unreleased changes
release unreleased will grab [Unreleased] sections of all CHANGELOG.md files recursively.
release unreleased
release unreleased --dir path/to/entrypoint
release u -d path/to/entrypoint
See previous versions
release show will output all previous version histories.
release show -v 0.1.0
release show -v 0.1.0 --dir path/to/entrypoint
release s -v 0.1.0 -d path/to/entrypoint
Show the latest released version in current directory
release latest
release latest --newline=false
release l
Bump all [Unreleased] sections to given version
By default, release to -v X.Y.Z will ask you for confirmation.
release to -v 0.2.0
# Targets
## .github/workflows/CHANGELOG.md
## CHANGELOG.md
✔ Enter `yes` to update all CHANGELOGs to version [0.8.0]: yes
If you want to integrate with CI pipeline, use --force or -f.
release to -v 0.2.0 --force
# Targets
## .github/workflows/CHANGELOG.md --> ✅
## CHANGELOG.md --> ✅
Done👍
See next release version
release next will suggest you the next available version.
release next
Latest released version: 0.8.0
Suggestions for next release:
- Major / Release --> 1.0.0
- Minor / Feature --> 0.9.0
- Patch / Hotfix --> 0.8.1
For CI integrations, add --type flag.
The words major, minor and patch comes from Semantic Versioning 2.0.0 idiom.
release next --type major
1.0.0
release next --type minor
0.9.0
release next --type patch
0.8.1
Note this command will not add newline when --type flag is specified.
Use --newline flag if you prefer to see the newline.
release next --type major --newline
GitFlow idiom is also supported.
release next --type release
1.0.0
release next --type feature
0.9.0
release next --type hotfix
0.8.1
Github-style semver vx.y.z
The tool also supports Github-style semver:
release show -v v0.1.0
release to -v v0.2.0
Development
Run
make run
Test
make test
Build
make build
License
Mozilla Public License v2.0