Is there any way to automatically generate change logs from commit messages to a file called CHANGELOG.md in a GitHub repo?
Might be possible using a service hook on a repo?
Auto-Generate ChangelogFollow the Conventional Commits Specification in your repository. We will use @commitlint/config-conventional to enforce this via Git hooks. Use standard-version, a utility for versioning using SemVer and changelog generation powered by Conventional Commits.
Conventional Commits makes generating a changelog easy by creating a release that uses semantic versioning. Let's examine the detail of the structure: <type> is a type of commit that affects the version number of the release. In semantic versioning, the fix type affects PATCH and the feat type affects MINOR.
conventional-changelog: a set of tools for parsing Conventional Commits messages from git histories. parse-commit-message: Extensible utilities for parsing, stringify and validating Conventional Commit messages.
I have written something like this some months ago. It is based on Git's porcelain and uses a git hook in plain bash.
You can find it in my Github Repo.
I have created a GitHub app 'Changelogg.io' to automate changelog from merged pull requests.
It detects changes mentioned in the PRs and creates a release draft for it. After adding the release version, it automatically updates CHANGELOG.md and also has a web UI with filters for the generated changelog. Few other features:
Youtube Walkthrough
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With