An interactive command-line client for writing git commit messages with gitmoji emoji prefixes.
orhun/git-cliff
A Rust CLI that generates changelog files from Git history using Conventional Commits and customizable regex parsers and templates.
- Stars
- 12,418
- Forks
- 361
- Open issues
- 117
- Last commit
- 5 days ago
What is it?
git-cliff builds changelog files directly from a repository's Git history. It parses commits that follow the Conventional Commits specification, and it can also use custom regex-based commit parsers for projects that use other message formats.
The output is shaped by a changelog template, which is controlled through a configuration file. Users can adjust how commits are grouped and formatted to match the changelog style their project needs.
The tool is written in Rust and is distributed as a standalone command-line program, with documentation covering installation, usage, configuration and templating.
Key features
- 01Generates changelogs from Git commit history.
- 02Parses Conventional Commits out of the box.
- 03Supports custom regex-based commit parsers.
- 04Customizes output through a configuration file and templates.
- 05Ships as a standalone Rust command-line program.
Use cases
- Generating a CHANGELOG.md automatically during a release process.
- Producing release notes from commits that follow Conventional Commits.
- Maintaining a changelog for a project whose commit messages use a custom format.
Quick start
- 1
Install git-cliff by following the installation guide in the official documentation
- 2
Read the usage examples in the official documentation
In collections
Topics
FAQ
- What is git-cliff?
- A Rust CLI that generates changelog files from Git history using Conventional Commits and customizable regex parsers and templates. git-cliff builds changelog files directly from a repository's Git history. It parses commits that follow the Conventional Commits specification, and it can also use custom regex-based commit parsers for projects that use other message formats.
- Is git-cliff free to use? What license does it have?
- git-cliff is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is git-cliff still maintained?
- Actively maintained. The last commit to git-cliff was on Nov 2, 2026.
- What can I use git-cliff for?
- Generating a CHANGELOG.md automatically during a release process. Producing release notes from commits that follow Conventional Commits. Maintaining a changelog for a project whose commit messages use a custom format.
- How do I install git-cliff?
- Install git-cliff by following the installation guide in the official documentation Read the usage examples in the official documentation
- Where can I get git-cliff?
- The source code and installation instructions are on GitHub: https://github.com/orhun/git-cliff
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A CLI tool for managing package versioning, changelogs, and publishing across monorepos, driven by changeset files contributors add with their changes.
Generic CLI tool that automates version bumping, git tagging, changelogs, GitHub/GitLab releases and npm publishing.
A CLI tool that generates conventional git commit messages from your staged diff using AI models, then commits them.
A CLI that wraps npm publish with pre-release checks, version bumping, git tagging, tests and pushes, so releases are done in one interactive run.
Automates changelogs, GitHub releases and version bumps by parsing Conventional Commits into a release PR.