Semantic Release Conventional Commit Version Bump
Use Conventional Commits to signal patch, minor, and major releases for semantic-release, release-please, changesets, and similar tooling.
Direct answer
In the common semantic-release setup, `fix:` creates a patch release, `feat:` creates a minor release, and any commit with `!` or a `BREAKING CHANGE:` footer creates a major release. Other types such as docs, test, chore, ci, build, and refactor usually do not publish a release unless your release config maps them differently.
Open Conventional Commit GeneratorWhen to use this
- You need the next package version to be patch, minor, or major.
- A breaking API, config, or database change must be visible to release tooling.
- You are using semantic-release, release-please, changesets, or automated changelogs.
Steps
- Decide whether the change is patch, minor, or major from the consumer impact.
- Use fix for bug fixes that should ship as patch releases.
- Use feat for new capabilities that should ship as minor releases.
- Use `!` or a `BREAKING CHANGE:` footer for incompatible changes.
- Check your repository release config before relying on custom type behavior.
Example
Removed the v1 invoices endpoint. Clients must call /v2/invoices and pass accountId instead of customerId. Updated migration notes.
feat(api)!: remove v1 invoices endpoint BREAKING CHANGE: clients must call /v2/invoices and pass accountId instead of customerId.
Common mistakes
- Do not use feat for an incompatible change without a breaking marker.
- Do not assume docs, chore, or refactor will publish a version in every release config.
- Do not hide migration details in the subject when a footer is clearer.
FAQ
- Which Conventional Commit creates a patch release?
- In common semantic-release presets, fix creates a patch release.
- Which Conventional Commit creates a minor release?
- In common semantic-release presets, feat creates a minor release.
- How do I mark a major release?
- Use `!` after the type or scope, add a `BREAKING CHANGE:` footer, or do both if your tooling and team prefer the explicit signal.
Related Conventional Commit guides
Which Conventional Commit Type Should I Use?
Choose the right Conventional Commit type for feat, fix, docs, refactor, perf, test, build, ci, chore, and revert commits.
Fix a Commitlint Conventional Commit Failure
Rewrite failed commitlint subjects into valid Conventional Commit messages with the right type, scope, subject, and breaking-change footer.
AI Coding Session Commit Message Generator
Turn a Claude Code, Codex, Cursor, Copilot, or Windsurf coding session summary into one clean Conventional Commit message.
Desk gear for long writing sessions
A few things that help if you write docs, tickets, and specs on a laptop all day.
Anker 5-in-1 USB-C Hub
One cable turns a laptop into a desk setup. Drives a 4K display, charges at up to 85W, and adds three data ports.
- 4K HDMI output
- 85W max power delivery
- 1x USB-C + 2x USB-A, 5Gbps each
- MacBook Pro, MacBook Air, Dell
Dell 27" S2725QC 4K
The monitor I write and review documents on. 163 PPI keeps small text sharp, and USB-C carries video and power on one cable.
- 3840x2160 IPS, 163 PPI
- 120Hz, 4ms, FreeSync Premium
- 99% sRGB
- USB-C, HDMI, DisplayPort
Apple MacBook Neo 13" (A18 Pro)
The cheapest way into an Apple-silicon machine that runs local models. Fanless, and the Liquid Retina panel holds small text at a full day of reading.
- A18 Pro chip, built for Apple Intelligence
- 8GB unified memory, 256GB SSD
- 13-inch Liquid Retina display
- 1080p FaceTime HD camera
Amazon affiliate links. We earn a commission on qualifying purchases at no extra cost to you.