Ömer Özbay
Git Branching
DevOps

Git Branching Stratejileri: Trunk-Based vs GitFlow

10 Şubat 2026 6 dk okuma 1.2K görüntülenme

Doğru branching stratejisi ekibinizin verimliliğini doğrudan etkiler. GitFlow mu, Trunk-Based Development mi? Cevap ekibinizin büyüklüğüne ve deployment sıklığına göre değişiyor.

GitFlow

Vincent Driessen'ın 2010'da tanımladığı model. main, develop, feature/*, release/*, hotfix/* branch'lerinden oluşur.

  • ✅ Büyük ekipler, planlı release döngüleri için uygun
  • ✅ Paralel geliştirme kolaylaşır
  • ❌ Karmaşık, merge conflict riski yüksek
  • ❌ Continuous deployment ile uyumsuz

Trunk-Based Development

Herkes doğrudan main'e küçük, sık commit'ler atar. Feature flag'ler ile tamamlanmamış özellikler gizlenir.

# Kısa ömürlü feature branch (max 1-2 gün) git checkout -b feat/user-avatar # ... küçük değişiklikler ... git push origin feat/user-avatar # PR aç, review al, merge et, branch'i sil
  • ✅ Google, Meta, Netflix kullanıyor
  • ✅ CI/CD ile mükemmel uyum
  • ✅ Merge conflict neredeyse yok
  • ❌ Güçlü CI altyapısı ve feature flag sistemi gerektirir

Hangisini Seçmeli?

  • 1-5 kişi, hızlı iterasyon: Trunk-Based
  • 5-20 kişi, haftalık release: GitHub Flow (basitleştirilmiş GitFlow)
  • 20+ kişi, çoklu versiyon: GitFlow

Sonuç

Modern yazılım geliştirmede Trunk-Based Development giderek standart haline geliyor. Eğer günde birden fazla deploy yapıyorsanız, GitFlow'un karmaşıklığına gerek yok.

Faydalı buldunuz mu? Bu içeriği kendi ağınızla paylaşarak bana destek olabilirsiniz.