GitFlow Nedir?

İngilizce: GitFlow

GitFlow, main, develop, feature, release ve hotfix dallarını ayrı rollerle kullanarak sürüm hazırlığı ve acil düzeltmeleri yöneten Git iş akışıdır.

GitFlow Nedir?

GitFlow, Git branch’lerini belirli rollerle kullanan bir sürüm yönetimi modelidir. main üretim sürümünü, develop bir sonraki sürümün entegrasyon hattını, feature branch’ler yeni işleri, release branch’ler sürüm hazırlığını, hotfix branch’ler ise acil üretim düzeltmelerini taşır.

Nasıl Çalışır?

Yeni geliştirme genellikle develop üzerinden açılan feature branch içinde yapılır. İş tamamlandığında merge request veya pull request ile develop dalına alınır. Sürüm zamanı geldiğinde release branch açılır; son testler, versiyon numarası ve küçük düzeltmeler burada yapılır. Yayınlanınca release hem main hem develop tarafına birleştirilir.

Üretimde kritik hata varsa hotfix branch doğrudan main üzerinden açılır. Düzeltme çıktıktan sonra değişiklik yine develop tarafına taşınır ki sonraki sürümde kaybolmasın.

Ne Zaman Uygun?

GitFlow, planlı sürüm döngüsü olan, aynı anda birden fazla sürümü destekleyen veya mobil uygulama mağazası gibi onay süreçlerinden geçen ekiplerde işe yarar.

Sürekli dağıtım yapan web ürünlerinde ise ağır kalabilir. CI/CD olgunlaştıkça daha kısa ömürlü branch’ler ve trunk-based yaklaşımlar tercih edilebilir. Model seçimi, ekibin release ritmine göre yapılmalıdır.