Git Commit Generator

Free Git commit message generator for Conventional Commits — pick feat, fix, or chore, add scope and breaking changes, copy the message or a ready-to-run git commit command. Autosaved in your browser.

By Muhammad Abdullah Rauf · Founder, EverydayTools.proUpdated 2026-06-02· Reviewed by EverydayTools Editorial Team

What is a conventional commit message generator?

A conventional commit generator helps you write Git commit messages in the Conventional Commits format—type(scope): description—with optional body, footer, and breaking-change markers that changelog tools can parse.

Conventional Commits is a lightweight convention: `feat(auth): add login` tells humans and automation that a feature landed in auth. Tools like semantic-release read commit types to bump semver—feat → minor, fix → patch, BREAKING CHANGE → major.

EverydayTools Git Commit Generator walks you through type, optional scope, imperative subject line, body, footer (e.g. Closes #123), and breaking-change flags. Copy the result into `git commit -m` or your IDE. Nothing is uploaded; messages are built locally in your browser.

Build Conventional Commit messages with breaking-change support—isolated from semver bump calculators.

Quick answers

Concise answers for common searches — definitions, steps, and comparisons.

What does Git Commit Generator do?

Build Conventional Commit messages with type, scope, body, breaking changes, and footers — copy-ready for git commit.

Is Git Commit Generator private?

Yes. Messages are generated locally in your browser without uploading content to EverydayTools.

How to use Git Commit Generator

  1. Choose commit type

    Select feat for features, fix for bugs, docs for documentation, chore for maintenance, or another Conventional Commits type.

  2. Add scope and subject

    Optionally narrow with a scope (auth, api, ui). Write a short imperative description — aim for 50 characters or fewer on the subject line.

  3. Body, footer, breaking changes

    Add a longer body for context, a footer like Closes #123, and enable breaking change when the API or behavior is incompatible.

  4. Copy message or git command

    Copy the formatted Conventional Commit or the full git commit command with -m flags for terminal paste.

Git Commit Generator examples

Feature with scope and issue footer

Input

type: feat, scope: auth, description: add OAuth login, footer: Closes #412

Output

feat(auth): add OAuth login

Closes #412

A typical feature commit linking a pull request to an issue tracker entry.

Who uses Git Commit Generator?

Common real-world scenarios where this tool saves time.

Daily feature and fix commits

Pick feat or fix, add scope, copy a valid message before git commit in terminal or VS Code.

Breaking API changes

Enable breaking change to produce ! and BREAKING CHANGE footer for semantic-release major bumps.

Issue-linked commits

Add Closes #123 or Fixes #456 in the footer to auto-close tickets when merged on GitHub/GitLab.

Workflow guides

Step-by-step chains that connect related tools for common tasks.

Generate a Conventional Commit message

  1. Select the commit type (feat, fix, chore, docs, refactor, etc.).
  2. Enter the optional scope and imperative subject line.
  3. Add body, footer, or breaking-change notes if needed.
  4. Copy the formatted message into git commit.

Reference tables

Git Commit Generator at a glance

How this page compares for day-to-day Git workflows.

AspectEverydayToolsTypical alternative
FormatConventional Commits templateBlank git commit editor
PrivacyBrowser-localIDE-only, no guidance
Breaking changesBuilt-in ! and footerManual formatting

When to use Git Commit Generator vs related tools

Use this tool to draft commit messages. For semver bumps after merging, use Semver Calculator.

Related toolUse this tool whenUse related tool when
Semver CalculatorYou need a properly formatted Conventional Commit message before running git commit.Commits are merged and you need to compare, bump, or sort semantic version numbers.
Markdown EditorYou are writing a Git commit subject and body.You are authoring README or changelog Markdown with live HTML preview.

Common mistakes to avoid

Past-tense subject line

Use imperative mood: "add login" not "added login" — it matches Git and Conventional Commits guidance.

feat for internal refactors

Use refactor when behavior is unchanged; reserve feat for user-visible capability.

Breaking flag without migration note

Expand the BREAKING CHANGE footer to explain what broke and how to migrate before pushing.

Troubleshooting

Fix: Your repo may enforce custom scopes or max length. Adjust scope and subject to match commitlint.config.js.

Fix: Move detail to the body. Keep the first line under 50–72 characters for readable git log and GitHub UI.

Advertisement

Frequently Asked Questions

What is the Conventional Commits specification?

Conventional Commits use type(scope): description with optional body and footer. Types like feat and fix carry semver meaning; BREAKING CHANGE (or a ! after the type) signals a major bump for tools like semantic-release.

What is the difference between feat and chore?

feat adds user-visible capability and typically bumps the minor version. chore covers maintenance—dependency updates, CI tweaks, repo housekeeping—that does not change production behavior or API surface.

When should I mark a breaking change?

When consumers must change code or configuration to upgrade—removed API fields, renamed env vars, changed default behavior. The generator adds ! to the subject and a BREAKING CHANGE footer you can expand before committing.

How long should the commit subject be?

Aim for 50 characters or fewer on the first line; many teams accept up to 72. Use the body for detail. The workspace shows a live character count as you type.

Is Git Commit Generator private on EverydayTools?

Yes. Commit text is composed in your browser. EverydayTools does not upload your messages for normal use.

Privacy, accuracy, and trust

Privacy

Commit text stays on your device during generation. Nothing is uploaded to EverydayTools servers.

Message formatting only — does not run git, enforce hooks, or validate your diff.

Advertisement

Reviewed by EverydayTools Editorial Team on 2026-06-02.