Commit Message
Format
code
<type>(<scope>): <emoji> <subject> <body> Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Types (Semantic Versioning)
| Type | Version Bump | Description |
|---|---|---|
feat | MINOR | New feature for the user |
fix | PATCH | Bug fix |
refactor | PATCH | Code change (no feature/fix) |
perf | PATCH | Performance improvement |
style | - | Formatting, whitespace |
docs | - | Documentation only |
test | - | Adding/updating tests |
build | - | Build system, dependencies |
ci | - | CI configuration |
chore | - | Maintenance tasks |
Breaking Changes: Append ! after type → feat!: triggers MAJOR bump
Emoji Reference
| Emoji | Usage |
|---|---|
| ✨ | New feature (feat) |
| 🐛 | Bug fix (fix) |
| ♻️ | Refactoring (refactor) |
| ⚡ | Performance (perf) |
| 📝 | Documentation (docs) |
| 🔧 | Configuration (chore) |
| ⬆️ | Dependency upgrade |
| 🏹 | Release |
Examples
bash
# Feature feat(auth): ✨ add OAuth2 login support # Bug fix fix(api): 🐛 resolve null pointer in user service # Refactoring refactor(components): ♻️ unify BaseTag root element # Release chore(release): 🏹 4.0.6 # Breaking change feat!(api): ✨ redesign authentication flow BREAKING CHANGE: Auth tokens now use JWT format
Rules
- •Use imperative mood: "add feature" not "added feature"
- •Keep subject under 72 characters
- •Scope is optional but recommended for clarity
- •Body explains "why" not "what"
- •Reference issues:
Fixes #123orCloses #456 - •Always include Co-Authored-By for AI-assisted commits