56 lines
1.2 KiB
Markdown
56 lines
1.2 KiB
Markdown
# Git Commit Conventions
|
|
|
|
Standard commit message format used across all repos on this Gitea instance.
|
|
|
|
## Format
|
|
|
|
```
|
|
type: short description (max 72 chars)
|
|
|
|
Optional longer body explaining WHY, not what.
|
|
```
|
|
|
|
## Types
|
|
|
|
| Type | Use for |
|
|
|------|---------|
|
|
| `init` | First commit in a repo |
|
|
| `feat` | New feature or capability |
|
|
| `fix` | Bug fix |
|
|
| `update` | Enhancement to existing feature |
|
|
| `chore` | Maintenance — deps, config, ignores |
|
|
| `docs` | Documentation only |
|
|
| `refactor` | Code restructure, no behaviour change |
|
|
| `remove` | Deleting files or features |
|
|
| `deploy` | Deployment-related changes |
|
|
|
|
## Examples
|
|
|
|
```
|
|
init: initial dotfiles
|
|
feat: add automount for NAS share
|
|
fix: correct SSH config hostname typo
|
|
update: extend deploy script to restart php-fpm
|
|
chore: add .gitignore for node_modules
|
|
docs: add README for arduino sketches
|
|
remove: drop legacy rsync deploy script
|
|
```
|
|
|
|
## Branch Naming
|
|
|
|
```
|
|
main / master — stable, production-ready
|
|
dev — active development
|
|
feature/NAME — specific feature work
|
|
fix/NAME — specific bug fix
|
|
```
|
|
|
|
## Tags (for deployments)
|
|
|
|
```
|
|
v1.0.0 — major release
|
|
v1.2.0 — minor feature addition
|
|
v1.2.1 — patch / hotfix
|
|
deploy-YYYYMMDD — deployment snapshot
|
|
```
|