If your code/project always uses Pull Requests to add/fix stuff in your code (e.g. no direct commits on master
), then Changelog Generator will come in handy. It’s a CLI tool (written in PHP) that automatically fetches all closed PRs and Issues between the targetted and the previously tagged release.
Installation is possible using Composer:
$ composer require jwage/changelog-generator
Once installed, run it like so:
$ changelog-generator generate --user=jwage --repository=changelog-generator --milestone=0.0.7
The snippet above will check all closed PRs and Issues that landed in between the 0.0.7
release and the one before (e.g. 0.0.6
) of the repo jwage/changelog-generator
.
0.0.7
=====
- Total issues resolved: **1**
- Total pull requests resolved: **4**
- Total contributors: **3**
Improvement
-----------
- [47: Upgrade Doctrine Coding Standards to 5.0](https://github.com/jwage/changelog-generator/pull/47) thanks to @jwage
- [43: Generate alternative (Setext, without #) Markdown format for headers](https://github.com/jwage/changelog-generator/pull/43) thanks to @Majkl578
- [38: Fix: Provide missing required php version in composer](https://github.com/jwage/changelog-generator/pull/38) thanks to @prisis
- [32: Upgrade PHPStan to 0.10](https://github.com/jwage/changelog-generator/pull/32) thanks to @jwage
Adding the --prepend --file=CHANGELOG.md
options, will automatically prepend its output to CHANGELOG.md
.
💡 In case you don’t always want to type the arguments you could define it as a custom composer command/script into your own project, or use a config file which is also supported.