Github has a feature that will automatically generate the release notes for you based on the tags you create in your repository. This is a great feature to use to keep track of what changes have been made in each release.
This will automatically note down pull request that are part of the next release and any issues that have been closed. You can add tags to these type of pull requests and issues to link them to the release notes.
To use this feature you need to create a new file in the .github folder called release.yml
this is a yaml file that will take the
following options.
- changelog.exclude.labels - A list of labels that exclude a pull request from appearing in release notes.
- changelog.exclude.authors - A list of user or bot login handles whose pull requests are to be excluded from release notes.
- changelog.categories[*].title - (Required) The title of a category of changes in release notes.
- changelog.categories[*].labels - (Required) Labels that qualify a pull request for this category. Use * as a catch-all for pull requests that didn't match any of the previous categories.
- changelog.categories[*].exclude.labels - A list of labels that exclude a pull request from appearing in this category.
- changelog.categories[*].exclude.authors - A list of user or bot login handles whose pull requests are to be excluded from this category.
Here is an example of a release.yml
file.
changelog:
exclude:
labels:
- skip-changelog
authors:
- dependabot[bot]
categories:
- title: 🚀 Features
labels:
- feature
- title: 🐛 Bug Fixes
labels:
- bug
- title: 🚀 Breaking Changes
labels:
- breaking-change
- title: Other Changes
labels:
- "*" # Catch-all for pull requests that didn't match any of the previous categories
Now when you create a new release in Github it will automatically generate the release notes for you based on the tags you have created in your repository.