git-cliff can generate changelog files from the Git history by utilizing conventional commits as well as regex-powered custom parsers.⛰️

Overview



About

git-cliff can generate changelog files from the Git history by utilizing conventional commits as well as regex-powered custom parsers. The changelog template can be customized with a configuration file to match the desired format.

preview

Table of Contents

Installation

From crates.io

git-cliff can be installed from crates.io:

cargo install git-cliff

Using pacman

If you are using Arch Linux, git-cliff can be installed from the community repository:

pacman -S git-cliff

Binary Releases

See the available binaries for different operating systems/architectures from the releases page.

Usage

Command Line Arguments

git-cliff [FLAGS] [OPTIONS] [RANGE]

Flags:

-v, --verbose       Increases the logging verbosity
-i, --init          Writes the default configuration file to cliff.toml
-l, --latest        Processes the commits starting from the latest tag
-u, --unreleased    Processes the commits that do not belong to a tag
-h, --help          Prints help information
-V, --version       Prints version information

Options:

-c, --config         Sets the configuration file [env: CONFIG=]  [default: cliff.toml]
-w, --workdir        Sets the working directory [env: WORKDIR=]
-r, --repository     Sets the repository to parse commits from [env: REPOSITORY=]
-p, --prepend        Prepends entries to the given changelog file [env: PREPEND=]
-o, --output         Writes output to the given file [env: OUTPUT=]
-t, --tag             Sets the tag for the latest version [env: TAG=]
-b, --body