CLI to generate an opinionated changelog.

Example usage screenshot

By default it just generates the changelog based on the whole git history. You can pass custom --start and --end parameters which are git refs to get a subset of changes between two commits or tags. That was my main goal with this CLI as it doesn't necessarily require semantic versioning.

Getting Started ๐Ÿš€

If the CLI application is available on pub, activate globally via:

dart pub global activate changelog_cli

Or locally via:

dart pub global activate --source=path <path to this package>


changelog_cli generate

# or
changelog_cli generate --path ~/Projects/my-app --start 1.0.0 --end 1.1.0 --version 1.1.0 --limit 2000 --printer markdown

You can get the previous tag using git command and then pass it to changelog_cli:

git describe --tags --abbrev=0
changelog_cli generate --start changelog_cli-v0.0.2

Running Tests with coverage ๐Ÿงช

To run all unit tests use the following command:

$ dart pub global activate coverage
$ dart test --coverage=coverage
$ dart pub global run coverage:format_coverage --lcov --in=coverage --out=coverage/

To view the generated coverage report you can use lcov.

# Generate Coverage Report
$ genhtml coverage/ -o coverage/

# Open Coverage Report
$ open coverage/index.html


changelog_cli, A Very Good Project created by Very Good CLI.