Search Tools

Search and navigate to any tool quickly

Git Commit Message Linter

Analyze your Git commit messages against Conventional Commits standards and get automatic fixes.

Commit Message
Paste your commit message below to validate it against Conventional Commits standards.
Quick Templates
Start with a template
Conventional Commits Guide
Learn about the Conventional Commits specification

What is Conventional Commits?

Conventional Commits is a specification for adding human and machine-readable meaning to commit messages. It provides an easy set of rules for creating an explicit commit history, which makes it easier to write automated tools on top of.

Format Structure

type(scope): description

[optional body]

[optional footer(s)]

type: The kind of change (required)

scope: What section of codebase (optional)

description: Brief summary (required)

body: Detailed explanation (optional)

footer: Breaking changes, issue refs (optional)

Examples

Simple
feat: add user authentication
With Scope
fix(api): resolve timeout issue
Breaking Change
feat(auth)!: change login endpoint

BREAKING CHANGE: endpoint changed from /login to /auth/login
With Body & Footer
fix(database): prevent connection leak

Added proper connection pool cleanup.
Improved error handling for timeout cases.

Closes #456

Commit Types

โœจfeatA new feature
๐Ÿ›fixA bug fix
๐Ÿ“šdocsDocumentation only changes
๐Ÿ’ŽstyleChanges that do not affect the meaning of the code
โ™ป๏ธrefactorA code change that neither fixes a bug nor adds a feature
โšกperfA code change that improves performance
โœ…testAdding missing tests or correcting existing tests
๐Ÿ—๏ธbuildChanges that affect the build system or external dependencies
๐Ÿ‘ทciChanges to CI configuration files and scripts
๐Ÿ”งchoreOther changes that don't modify src or test files
โชrevertReverts a previous commit

Benefits

  • Automatically generate CHANGELOGs
  • Automatically determine semantic version bump
  • Communicate nature of changes to teammates
  • Trigger build and publish processes
  • Make it easier for people to contribute

Best Practices

  • Keep the subject line under 100 characters
  • Use lowercase for type and description
  • Don't end the subject line with a period
  • Use imperative mood ("add" not "added")
  • Add blank line between subject and body
  • Wrap body at 72-100 characters
  • Use body to explain what and why vs. how