Commits Guideline - ricardotimmr/praxisprojekt-2025-varia GitHub Wiki
Commit-Konvention
Typen
API-relevante Änderungen
feat: Commits, die ein neues Feature hinzufügen oder entfernenfix: Commits, die einen Fehler beheben
Code-Umstrukturierung
refactor: Commits, die den Code umstrukturieren oder neu schreiben, ohne das API-Verhalten zu ändernperf: Speziellerefactor-Commits, die die Performance verbessern
Sonstige Typen
style: Commits, die keine inhaltlichen Änderungen verursachen (z. B. Formatierung, Leerzeichen, Semikolons)test: Commits, die Tests hinzufügen oder bestehende Tests korrigierendocs: Commits, die ausschließlich die Dokumentation betreffenbuild: Commits, die das Build-System betreffen (z. B. Build-Tools, CI/CD, Abhängigkeiten, Versionierung)ops: Commits, die operative Komponenten wie Infrastruktur, Deployment, Backup oder Recovery betreffenchore: Sonstige Aufgaben, z. B. Änderungen an.gitignoreoder an Konfigurationsdateien
Scopes (Geltungsbereiche)
- Der
scopegibt zusätzlichen Kontext zur Änderung. - Ist ein optionaler Bestandteil des Formats.
- Gültige Scopes sind projektspezifisch festzulegen.
- Keine Verwendung von Issue-IDs als Scope.
Beispiel:
feat(ui): implementiere dark-mode-toggle
Breaking Changes
Breaking Changes sollten durch ein Ausrufezeichen ! vor dem Doppelpunkt gekennzeichnet werden:
Beispiel:
feat(api)!: entferne status-endpunkt
Dies ist ein optionaler Bestandteil des Formats.
Beschreibung (description)
- Ist ein verpflichtender Bestandteil des Commit-Formats
- Verwendung des Imperativs im Präsens:
– korrekt: „füge hinzu“
– nicht korrekt: „hinzugefügt“, „fügt hinzu“ - Keine Großschreibung am Anfang
- Kein Punkt am Ende
Beispiel:
fix(auth): behebe token-ablauf bei inaktivität
Body (optional)
- Erläutert die Motivation für die Änderung
- Vergleicht vorheriges und aktuelles Verhalten
- Ebenfalls im Imperativ Präsens formuliert
- Hier können Issue-IDs erwähnt werden (z. B.
#42)
Footer (optional)
- Enthält zusätzliche Hinweise oder Referenzen
- Breaking Changes werden hier ausführlich dokumentiert
Beispiel für Breaking Changes im Footer: