# 📘 Commit-Konventionen – Conventional Commits Dieses Projekt verwendet das [Conventional Commits](https://www.conventionalcommits.org)-Format für einheitliche und nachvollziehbare Commit-Nachrichten. --- ## 🔧 Format ``` [optional scope]: ``` **Beispiel:** ``` feat: add Ansible deploy playbook ``` - **Englisch** - **Präsens** (z. B. „add“, nicht „added“) - **Keine abschließenden Punkte** - **Optionaler Body** bei größeren Änderungen --- ## 📦 Commit-Typen | Typ | Beschreibung | |------------|--------------------------------------------------------| | `feat` | ✨ Neues Feature | | `fix` | 🐛 Fehlerbehebung | | `docs` | 📘 Nur Dokumentation (z. B. README, .env.example) | | `style` | 🎨 Formatierung, keine Änderung am Verhalten | | `refactor` | 🔁 Code-Umstrukturierung ohne neues Verhalten/Feature | | `test` | 🧪 Tests hinzufügen oder anpassen | | `chore` | 🔧 Projektpflege (z. B. `.gitignore`, `.mailmap`, Cleanup) | --- ## ✅ Gute Commit-Beispiele ```bash chore: initial commit with Docker + Ansible setup feat: add restart task to deploy role fix: correct Docker volume path docs: add .env.example as reference chore: add .mailmap to unify author identity ``` --- ## 🛑 Vermeide unklare Messages wie: ```bash "update" "bugfixes" "misc" "more changes" ``` Diese helfen später weder dir noch Tools oder anderen. --- ## 🧠 Tipps - Nutze aussagekräftige, prägnante Beschreibungen - Schreibe deine Commits so, dass man daraus verstehen kann, **was passiert** – ohne Git-Diff zu lesen - Wenn du mehrere Dinge in einem Commit machst, überlege, ob es **mehrere Commits** sein sollten --- ## 📚 Weitere Infos - [conventionalcommits.org](https://www.conventionalcommits.org) - [semantic-release](https://semantic-release.gitbook.io/semantic-release/) – für automatische Releases basierend auf Commit-Typen