Commit Message Formatter

Create well-formatted, conventional commit messages with ease.

How to Use

1

Select Type: Choose a commit type (e.g., feat, fix) from the dropdown.

2

Fill Details: Add an optional scope and a descriptive message for your change.

3

Copy Message: Use the copy button to get the formatted conventional commit message.

Commit Details

Formatted Message

Your formatted commit message will appear here...

What is a Conventional Commit Message?

A conventional commit message is a lightweight convention on top of 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. This convention dovetails with SemVer, by describing the features, fixes, and breaking changes made in commit messages.

Common Use Cases

Automated Changelogs

Automatically generate changelogs from your commit history.

Semantic Versioning

Automatically determine a semantic version bump based on the types of commits.

Better Collaboration

Communicate the nature of changes to teammates, the public, and other stakeholders.

Improved Git History

A more readable and structured commit history makes it easier to understand the project's evolution.

Frequently Asked Questions

Why use Conventional Commits?

It helps in automatically generating CHANGELOGs, determining a semantic version bump (based on the types of commits), and making it easier for people to contribute to your projects by providing a more structured commit history.

Is the scope required?

No, the scope is optional. It provides additional contextual information and is contained within parenthesis, e.g., feat(api): ....

What if a commit has more than one type?

If a commit contains more than one type of change, it's best to split it into multiple commits. If that's not possible, choose the type that best represents the primary change.

What are the common commit types?

Common types include feat (new feature), fix (bug fix), docs (documentation), style (code style changes), refactor (code refactoring), perf (performance improvements), test (adding tests), and chore (build process or auxiliary tools).

How does this tool help with semantic versioning?

By following the Conventional Commits specification, this tool helps you create commits that can be programmatically analyzed. For example, a fix type commit might correspond to a PATCH version bump, while a feat type commit could correspond to a MINOR version bump. Commits with BREAKING CHANGE in the footer can signal a MAJOR version bump.