releaser is a utility for effortlessly generating release notes for GitHub releases.
- Configurable - Store your releaser configuration on a per-repository basis
- Customizable - Build release notes in a standardized manner that matches your project workflow
- Hackable - Releaser is 100% OSS: Contributions are always welcome!
- Efficient - Uses
git
to retrieve repository history and can support Redis caching for GH API requests
Install with composer:
composer require limit0/releaser
Or you can install releaser manually:
curl -LO https://limit-zero.github.io/releaser/releaser.phar
mv releaser.phar /usr/local/bin/releaser
chmod +x /usr/local/bin/releaser
After installing releaser, you'll need to do some initial configuration. To access the GitHub API, you'll need a Personal Access Token with the repo
permission.
To configure releaser, execute releaser[.phar] configure
. You can reconfigure global settings at any time -- these settings are stored in ~/.releaser/settings.json
.
Inside a git project, run releaser[.phar] configure-project
To walk through project coniguration. A .releaser.yaml
file will be stored in your project with your settings. Be sure to commit this to ensure your projects release notes are consistant -- it could even be your first release!
Once your project is configured, use releaser[.phar] releases
to list existing releases. To create a new release, use releaser[.phar] create
. To preview your release notes instead of creating them, either cancel the create
process or use releaser[.phar] preview
.
For detailed usage instructions, please see the wiki