Menu
Coddy logo textTech

Çatışma Çözme

Coddy'nin Terminal Journey'sinin Versiyon Kontrolü bölümünün bir parçası — ders 38 / 58.

İptal etmek bazen doğru hamledir, ancak çoğu zaman çatışmayı gerçekten çözmek ve birleştirmeyi bitirmek istersiniz.

Bir çatışmayı çözmek üç adımlı bir ritüeldir:

  1. Çakışan dosyayı açın. İşaretçi bloğunu istediğiniz sürümle (veya bir kombinasyonla) değiştirin.
  2. Çözümlenen dosyayı git add ile hazırlama alanına ekleyin.
  3. Birleştirmeyi git commit ile tamamlayın.

Dosyayı doğrudan çözümlenmiş içerikle üzerine yazmak için bir betik kullanabilirsiniz; bu derste tam olarak bunu yapacaksınız (editöre gerek yok).

Çözümlenmiş dosyayı git add yapmayı unutursanız, commit işlemi başarısız olur ve size dosyanın hala birleştirilmemiş olarak işaretlendiğini bildirir.

challenge icon

Görev

Orta

notes.txt üzerinde tam olarak önceki dersteki gibi bir çakışma (conflict) oluşturun:

  • main dalında hello içeriğiyle ilk commit'i yapın
  • alt dalında: içeriği hi from alt olarak değiştirin ve commit yapın
  • Tekrar main dalına dönün: içeriği hi from main olarak değiştirin ve commit yapın
  • git merge alt komutunu çalıştırın (çakışma oluşacaktır)

Çakışmayı, notes.txt dosyasının üzerine hi from both satırını yazarak çözün. Dosyayı stage alanına ekleyin ve birleşmeyi Resolve notes mesajıyla tamamlayın. notes.txt dosyasının son içeriğini yazdırın.

Kopya kağıdı

Bir birleştirme çakışmasını (merge conflict) çözmek için:

  1. Çakışan dosyayı düzenleyin — çakışma işaretlerini kaldırın ve istenen içeriği tutun.
  2. Çözülen dosyayı hazırlama alanına (stage) ekleyin: git add <file>
  3. Birleştirmeyi tamamlayın: git commit
git add notes.txt
git commit -m "Resolve conflict"

Eğer git add adımını atlarsanız, dosya hala birleştirilmemiş olarak işaretlendiği için commit işlemi başarısız olur.

Kendin dene

Terminal
quiz iconKendini test et

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