# 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 ```