Was ist Trunk-basierte Entwicklung
Entwicklung in einem einzelnen Branch
Trunk-basierte Entwicklung ist eine Entwicklungsmethodik, bei der alle Entwickler in einem einzigen Hauptbranch (trunk/main) arbeiten und häufige kleine Commits machen.
Schlüsselprinzipien
- Alle Änderungen gehen direkt in main/trunk
- Kurzlebige Feature-Branches (max. 1-2 Tage)
- Häufige Commits (mehrmals täglich)
- Continuous Integration ist obligatorisch
Vorteile
- Minimierte Merge-Konflikte
- Schnelles Feedback
- Einfache Commit-Historie
- Beschleunigte CI/CD-Prozesse
- Reduziertes Integrationsrisiko
Praktiken für den Erfolg
- Feature Flags — Verstecken unvollständiger Features
- Trunk-based + kurzlebige Branches — Branches für 1-2 Tage
- Kontinuierliches Code Review — ständiges Code-Review
- Automatisiertes Testen — automatisierte Tests bei jedem Commit
Vergleich mit Git Flow
| Aspekt | Trunk-Based | Git Flow | |--------|-------------|----------| | Branches | 1 Haupt | Viele langlebige | | Releases | Kontinuierlich | Geplant | | Komplexität | Niedrig | Hoch | | Konflikte | Selten | Häufig |
Wann verwenden
- Erfahrene Teams mit guter Testabdeckung
- Projekte mit CI/CD
- Wenn häufige Releases benötigt werden