Etkili Git Kullanımı: Branch, PR, Commit ve Sürüm Yönetimi Rehberi Help

Branch Stratejisi

Geliştirme sürecinde düzenli ve etkili bir iş akışı sağlamak için belirli bir branch stratejisi izlemek önemlidir. Bu strateji, kodun nasıl yönetileceğini, hangi branch'lerin ne amaçla kullanılacağını ve bu branch'ler arasında nasıl geçiş yapılacağını belirler.

Ana Branch'ler

Ana branch'ler, yazılımın belirli aşamalarını temsil eder ve genellikle projenin tamamlanmış, test edilmiş ve stabil kodunu içerir. Bu branch'ler, ekibin tüm üyeleri tarafından ortak olarak kullanılır ve proje boyunca süreklilik sağlar.

  • main veya master: Bu branch, üretim ortamında çalışan en son sürüm kodunu içerir. main veya master branch'i, her zaman kararlı ve dağıtıma hazır kodu temsil eder. Projede yapılan tüm değişiklikler, test edildikten ve onaylandıktan sonra bu branch'e merge edilir.

    • Örnek:

      git checkout main git merge hotfix/critical-bug
  • development: development branch'i, devam eden geliştirme çalışmaları için kullanılan ana branch'tir. Yeni özellikler ve hata düzeltmeleri bu branch üzerinde gerçekleştirilir. Bu branch, ekibin bir araya gelerek çalıştığı ve henüz üretim ortamına geçmemiş olan en son kodu içerir.

    • Örnek:

      git checkout development git merge feature/user-authentication

Feature Branch'ler

Feature branch'ler, yeni özellikler geliştirilirken kullanılır. Bu branch'ler, development branch'inden oluşturulur ve geliştirme tamamlandığında development branch'ine merge edilir. Bu süreç, farklı özelliklerin bağımsız olarak geliştirilmesine olanak tanır.

  • Örnek:

    git checkout -b feature/user-authentication development

    Geliştirme tamamlandıktan sonra:

    git checkout development git merge feature/user-authentication

Bugfix Branch'ler

Bugfix branch'ler, acil hata düzeltmeleri için kullanılır. Bu branch'ler, development branch'inden oluşturulur ve hata düzeltmesi tamamlandığında tekrar development branch'ine merge edilir. Bugfix branch'leri, hata düzeltme süreçlerini izole eder ve diğer geliştirme süreçleriyle çakışmaların önüne geçer.

  • Örnek:

    git checkout -b fix/login-issue development

    Hata düzeltmesi tamamlandıktan sonra:

    git checkout development git merge fix/login-issue

Hotfix Branch'ler

Hotfix branch'ler, üretim ortamındaki kritik hataların acil olarak düzeltilmesi için kullanılır. Bu branch'ler, doğrudan main veya `master

branch'inden oluşturulur ve düzeltme tamamlandığında hemmainhem dedevelopment` branch'lerine merge edilir. Bu süreç, kritik sorunların hızla çözülmesini ve projenin kararlı kalmasını sağlar.

  • Örnek:

    git checkout -b hotfix/critical-bug main

    Düzeltme tamamlandıktan sonra:

    git checkout main git merge hotfix/critical-bug git checkout development git merge hotfix/critical-bug

Branch Stratejisinin Faydaları

  • Düzenli ve Organize Bir Geliştirme Süreci Sağlar: Belirli bir branch stratejisi izlemek, ekip üyelerinin hangi branch'ler üzerinde çalıştığını ve bu branch'lerin ne amaçla kullanıldığını net bir şekilde anlamalarını sağlar.

  • Çakışmaları Minimize Eder: Farklı branch'ler üzerinde çalışmak, geliştiricilerin birbirlerinin çalışmalarını kesintiye uğratmadan işlerini yapmalarına olanak tanır. Bu, çakışmaları ve hata riskini azaltır.

  • Sürüm Yönetimini Kolaylaştırır: Ana branch'lerin stabil kalması, sürüm yönetimini daha öngörülebilir ve yönetilebilir hale getirir.

Last modified: 23 August 2024