-
Notifications
You must be signed in to change notification settings - Fork 37
PR Conventional Commit Naming Help
Ryan P. McKinnon edited this page Jan 30, 2026
·
1 revision
Here's a breakdown of the common Conventional Commit types and their typical uses:
feat: - New features or functionality
- Bumps MINOR version
- Examples: "feat(all): add user authentication", "feat(gs): support dark mode"
fix: - Bug fixes
- Bumps PATCH version
- Examples: "fix(gs): resolve login timeout issue", "fix(dr): correct calculation error"
refactor: - Code restructuring without changing behavior
- No version bump
- Examples: "refactor(gs): extract helper functions", "refactor(gs): simplify conditional logic"
perf: - Performance improvements
- No version bump (though some argue these could be
fix:) - Examples: "perf(all): optimize database queries", "perf(all): reduce memory usage"
docs: - Documentation changes
- No version bump
- Examples: "docs(all): update API reference", "docs(all): fix typos in README"
style: - Code style/formatting (not CSS)
- No version bump
- Examples: "style(all): fix indentation", "style(all): run prettier"
test: - Adding or updating tests
- No version bump
- Examples: "test(all): add unit tests for auth", "test(all): improve coverage"
build: - Build system or dependency changes
- No version bump
- Examples: "build(all): upgrade webpack to v5", "build(all): update npm dependencies"
ci: - CI/CD configuration changes
- No version bump
- Examples: "ci(all): add GitHub Actions workflow", "ci(all): update deployment script"
chore: - Maintenance tasks
- No version bump
- Examples: "chore(all): update .gitignore", "chore(all): bump version numbers"
Breaking changes (any type with ! or BREAKING CHANGE:) bump the MAJOR version regardless of the commit type.