
git-convention
Git convention for branch naming, commit messages, and issue labels based on GitFlow and Conventiona
by seungwonme|Open Source
Git Convention
Branch Naming
Format: type/[branch/]description[-#issue]
| Type | Description | Example |
|---|---|---|
| feat | New feature | feat/login-#123 |
| fix | Bug fix | fix/button-click-#456 |
| docs | Documentation | docs/api-docs-#789 |
| style | Code style (no logic change) | style/css-format-#101 |
| refactor | Code restructure | refactor/auth-service-#102 |
| test | Add/modify tests | test/unit-tests-#103 |
| chore | Maintenance | chore/dependency-update-#104 |
Commit Message Format
<type>(<scope>): <subject>
<body>
<footer>
Rules
- Max 100 characters per line
- Subject: imperative, present tense ("change" not "changed")
- Subject: no capitalize, no period at end
- Body: motivation and contrast with previous behavior
Types
- feat: New feature
- fix: Bug fix
- docs: Documentation
- style: Formatting, missing semicolons
- refactor: Code restructure without behavior change
- test: Adding or updating tests
- chore: Build, package manager, no code change
Setup
Commit Template
git config --local commit.template .github/.gitmessage
Issue Labels
github-label-sync --access-token <token> --labels .github/labels.json <owner>/<repo>