Changelog Generator

A configurable commit-based changelog generator. It finds commits since the previous release, filters them, then groups them.
Generated changelogs look similar to the changelogs generated by GoReleaser, making this action a great fit for projects where another build tool is used.
Usage
GitHub Action
| Name |
Description |
Default |
output |
Generated changelog path. |
|
path |
Path to the local git repository |
"." |
config |
Path to the config file. |
.changelog-generator.yaml |
token |
GitHub token used to fetch release assets. |
${{ github.token }} |
install-only |
Installs changelog-generator without running it |
"false" |
Outputs
| Name |
Description |
changelog |
The generated changelog markdown. |
Example
name: Release
on:
push:
tags:
- "v*.*.*"
jobs:
release:
name: Release
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Generate Changelog
uses: gabe565/changelog-generator-action@v1
id: changelog
- name: Release
uses: softprops/action-gh-release@v2
with:
body: ${{ steps.changelog.outputs.changelog }}
Configuration
Changelog Generator can be configured by committing a file to one of the paths listed below. See the config example for available configuration documentation.
Default Paths
.changelog-generator.yaml
.github/changelog-generator.yaml
.goreleaser.yaml.
Installation
Changelog Generator can also be installed for local generation and previews.
APT (Ubuntu, Debian)
Click to expand
-
If you don't have it already, install the ca-certificates package
sudo apt install ca-certificates
-
Add gabe565 apt repository
echo 'deb [trusted=yes] https://apt.gabe565.com /' | sudo tee /etc/apt/sources.list.d/gabe565.list
-
Update apt repositories
sudo apt update
-
Install changelog-generator
sudo apt install changelog-generator
RPM (CentOS, RHEL)
Click to expand
-
If you don't have it already, install the ca-certificates package
sudo dnf install ca-certificates
-
Add gabe565 rpm repository to /etc/yum.repos.d/gabe565.repo
[gabe565]
name=gabe565
baseurl=https://rpm.gabe565.com
enabled=1
gpgcheck=0
-
Install changelog-generator
sudo dnf install changelog-generator
AUR (Arch Linux)
Click to expand
Install changelog-generator-bin with your AUR helper of choice.
Homebrew (macOS, Linux)
Click to expand
Install changelog-generator from gabe565/homebrew-tap:
brew install gabe565/tap/changelog-generator
Manual Installation
Click to expand
Download and run the latest release binary for your system and architecture.