Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Command-Line Apps
  3. clog

clog

MITRustv0.9.3

A command-line tool that automatically generates changelogs from conventional Git commit history.

GitHubGitHub
920 stars46 forks0 contributors

What is clog?

clog-cli is a command-line tool that automatically generates structured changelogs from Git commit history using conventional commit formats. It parses commit messages to categorize changes into features, bug fixes, and performance improvements, outputting formatted Markdown or JSON. This solves the problem of manually curating and maintaining changelogs across software releases.

Target Audience

Developers and maintainers of versioned software projects who follow conventional commit practices and want to automate changelog generation as part of their release workflow.

Value Proposition

Developers choose clog-cli for its simplicity, tight integration with Git, and adherence to conventional commit standards, ensuring consistent and automated changelogs without manual effort. Its Rust-based performance and flexible configuration make it a reliable tool for release automation.

Overview

Generate beautiful changelogs from your Git commit history

Use Cases

Best For

  • Automating changelog generation for GitHub or GitLab repositories
  • Enforcing conventional commit message standards across teams
  • Generating release notes for semantic versioned projects
  • Integrating changelog creation into CI/CD pipelines
  • Maintaining open-source projects with consistent documentation
  • Converting Git history into formatted Markdown for documentation sites

Not Ideal For

  • Projects using commit messages that don't follow Angular-style conventional formats
  • Teams that require a graphical user interface for changelog editing and management
  • Environments using version control systems other than Git (e.g., SVN or Mercurial)
  • Projects needing highly customized, non-Markdown/JSON output formats like HTML or PDF

Pros & Cons

Pros

Conventional Commit Parsing

Accurately categorizes changes into Features, Bug Fixes, and Performance sections based on Angular-style commit messages, ensuring consistent and automated changelog structure without manual sorting.

Flexible Output Formats

Supports Markdown and JSON outputs with configurable repository link styles for GitHub, GitLab, Stash, and cgit, making it easy to integrate into various documentation workflows and platforms.

Automated Version Incrementing

Automatically increments major, minor, or patch versions based on commit types, streamlining release versioning and reducing manual errors in semantic versioning.

Configuration File Support

Uses TOML files (.clog.toml) to set defaults like repository URLs and output files, allowing for project-specific settings and reducing repetitive CLI arguments during use.

Library and CLI Integration

Available as a Rust library (clog-lib) for embedding changelog generation into applications, offering flexibility beyond command-line use for custom automation scenarios.

Cons

Compilation and Installation Overhead

Requires Rust and cargo to compile from source, and precompiled binaries are scarce except for Mac via npm, making initial setup cumbersome for teams not familiar with Rust toolchains.

Limited Precompiled Distribution

Lacks readily available precompiled binaries for most platforms, forcing users to compile manually or rely on limited npm distribution, which can slow down adoption in heterogeneous environments.

Strict Git Convention Dependency

Heavily relies on Angular-style conventional commits; any deviation in commit message format results in incomplete or inaccurate changelogs, requiring strict team discipline to maintain effectiveness.

Basic Customization Limits

Offers limited output customization beyond Markdown and JSON, with no built-in support for advanced templates or formats like HTML, which may not suit projects needing highly styled changelogs.

Frequently Asked Questions

Quick Stats

Stars920
Forks46
Contributors0
Open Issues26
Last commit2 years ago
CreatedSince 2014

Tags

#developer-tools#command-line-tool#release-automation#changelog-generator#conventional-commits#rust#git-tools#versioning

Built With

C
Cargo
R
Rust

Included in

Rust56.6kCommand-Line Apps19.2k
Auto-fetched 1 day ago

Related Projects

goosegoose

an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM

Stars55,520
Forks6,416
Last commit1 day ago
justjust

🤖 Just a command runner

Stars36,389
Forks863
Last commit4 days ago
misemise

dev tools, env vars, task runner

Stars35,250
Forks1,493
Last commit1 day ago
jjjj

A Git-compatible VCS that is both simple and powerful

Stars32,186
Forks1,258
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub