Merge Nedir?
Coddy'nin Terminal Journey'sinin Versiyon Kontrolü bölümünün bir parçası — ders 34 / 58.
Bir merge işlemi, bir daldaki çalışmaları başka bir dala getirir. Başarılı bir merge işleminden sonra, hedef dal her iki daldaki tüm commit'leri içerir ve dosyalar birleştirilmiş sonucu yansıtır.
Standart iş akışı şu şekildedir:
- Birleştirme işlemini içine yapmak istediğiniz dala geçiş yapın (genellikle
main). git merge other-branchkomutunu çalıştırın.
git switch main
git merge feature-loginGit, iki dalın geçmişine bakar ve bunları nasıl birleştireceğini belirler. Çoğu zaman bunu otomatik olarak yapar. İki ana birleştirme (merge) türü şunlardır:
- Fast-forward:
maindal oluşturulduğundan beri hareket etmedi. Git sadecemainişaretçisini ileri kaydırır. - Üç yollu birleştirme (Three-way merge): her iki dalda da yeni commit'ler var. Git, bunları birleştiren yeni bir "merge commit" oluşturur.
Önümüzdeki iki derste her iki şekli de göreceksiniz.
Görev
BaşlangıçKlasör app.txt dosyasını içeriyor. Depoyu kurun, main üzerinde ilk commit'i yapın, ardından mevcut dalı yazdırın.
Bu, bir sonraki derste yapılacak birleştirme (merging) işleminden önce sadece bir ısınmadır.
Kopya kağıdı
Bir birleştirme (merge) işlemi, bir daldaki çalışmaları diğerine aktarır. Önce hedef dala geçiş yapın, ardından birleştirin:
git switch main
git merge feature-loginİki tür birleştirme vardır:
- Hızlı ileri sarma (Fast-forward): Dal oluşturulduğundan beri
maindalı ilerlemedi — Git sadece işaretçiyi ileri taşır. - Üç yollu birleştirme (Three-way merge): Her iki dalda da yeni commit'ler var — Git yeni bir birleştirme commit'i oluşturur.
Kendin dene
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Versiyon Kontrolü bölümündeki tüm dersler
4Değişiklikleri İnceleme
Git DiffHazırlanan Değişiklikleri KarşılaştırmaGit ShowÖzet - Dedektiflik Çalışması5Dosyaları Yoksayma
Dosyaları Neden YoksayarızGitignore DesenleriYoksayma Kurallarını Kontrol EtmeÖzet - Temiz Repo8Birleştirme
Merge Nedir?Fast-Forward MergeÜç Yönlü BirleştirmeMerge ÇatışmalarıÇatışma ÇözmeÖzet - Merge Ustası3Değişiklikleri İzleme
Hazırlık AlanıGit AddGit Commitİzlenen Bir Dosyayı DeğiştirmeGit LogÖzet - İlk Commit'ler6Yemek Tarifi Sitesi Projesi
Projeye Genel BakışBaşlatma ve Yoksayma