Git ‘merge conflict’ (birleştirme çakışması) nasıl çözülür?
Git merge conflict (birleştirme çakışması) sorunlarını adım adım çözmeyi öğrenin ve projelerinizde sorunsuz bir versiyon kontrolü sağlayın.
Merge conflict (birleştirme çakışması), bir branch‘i (dalı) başka bir dal ile birleştirirken, aynı dosyanın aynı satırında yapılan farklı değişikliklerin Git tarafından otomatik olarak birleştirilememesi durumudur. Bu durumda Git, kullanıcının hangi değişikliğin korunacağını belirtmesini ister.
- Aynı dosyanın aynı satırında farklı değişiklikler yapılması
- Bir dalda silinen bir dosyanın diğerinde düzenlenmiş olması
- Birleştirilen dallardaki commit tarihçelerinin uyumsuz olması
Çakışma oluştuğunda, terminalde şu mesaj görünür: CONFLICT (content): Merge conflict in <dosya_adı>. Bu durumda Git, çakışan dosyalara özel işaretler ekler:
- <<<<<<< HEAD — Şu anki branch (dal) içeriğini gösterir.
- ======= — İki versiyon arasındaki ayrımı belirtir.
- >>>>>>> branch_adi — Birleşen diğer dalın içeriğini gösterir.
- 1. Çakışan dosyayı bir metin düzenleyici ile açın.
- 2. Git’in gösterdiği işaretler arasındaki farkları inceleyin.
- 3. Hangisinin korunacağına veya iki değişikliği birleştirip yeni bir çözüm oluşturacağınıza karar verin.
- 4. İşaretleri (<<<<< ======= >>>>>) kaldırın ve dosyayı kaydedin.
- 5. Terminalde şu komutları çalıştırın:
git add <dosya_adı>
git commit - 6. Çakışma çözülmüş olur ve merge işlemi tamamlanır.
- Sık sık git pull komutu kullanarak ana dalı güncel tutun.
- Küçük, odaklı commit’ler yapın.
- Ekip içinde kod düzenlemeleriyle ilgili iletişimi artırın.
- Git rebase kullanarak gereksiz merge işlemlerini azaltın.
Git merge conflict yazılım geliştirme sürecinin doğal bir parçasıdır. Temel işaretleri anlamak ve sistematik çözüm adımlarını uygulamak, ekiplerin daha verimli çalışmasını sağlar. Düzenli olarak pratik yapmak ve Git komutlarını doğru kullanmak, çakışmaları kısa sürede çözebilmenize yardımcı olur.
Yorum Yap