İçeriğe geç

Git Merge Conflict Dosyalarını Bulma Komutu Ve Seçenekleri

| | 3 dk okuma

Kısaca: Git merge conflict dosyalarını bulma komutu, çözülmemiş yolları listeleyen git diff –name-only –diff-filter=U komutudur. git status dosyaların durumunu da gösterir. Bu komutlar merge, rebase veya cherry-pick durduğunda müdahale gereken dosyaları belirler; çakışmayı çözmez, yalnızca çözülmemiş dosyaları bulur.

Birleştirme sırasında işlem durduysa önce hangi dosyaların müdahale beklediğini görmek gerekir. Git merge conflict dosyalarını bulma komutu, bu listeyi hızlıca çıkarır; ardından çakışmanın türüne göre doğru dosyayı inceleyebilirsiniz.

Dosya adlarını görmek başlangıçtır. Çakışmanın nedenini anlamak, yanlış içeriği seçip işlemi tamamlamanızı önler.

Çakışma dosyaları hangi durumlarda görünür?

Çakışma, Git aynı dosyadaki değişiklikleri otomatik olarak birleştiremediğinde ortaya çıkar. Git ortak değişiklikleri birleştirir; ancak iki tarafın düzenlemesini güvenle uzlaştıramazsa işlem durur ve dosyayı çözülmemiş olarak işaretler.

  • İçerik çakışması: İki dal aynı satırları farklı biçimde değiştirmiştir. Dosyada `<<<<<<<`, `=======` ve `>>>>>>>` çakışma işaretçileri görülebilir.
  • Dosya yolu ve silme çakışması: Bir dal dosyayı değiştirirken diğeri silmiş ya da aynı dosyayı farklı adlara taşımıştır. Git, hangi dosyanın kalacağına veya yeni adın kullanılacağına sizin karar vermenizi bekler.

Çakışmalar yalnızca merge sırasında oluşmaz. Rebase ve cherry-pick işlemleri de aynı dosya değişikliklerini uzlaştıramazsa durabilir. Git merge conflict dosyalarını bulma komutu, bu işlemlerin her birinde çözülmemiş yolları bulmaya yarar.

Çakışan dosyaları bulma komutları nasıl kullanılır?

Komutları birleştirme veya yeniden tabanlama durduktan sonra çalıştırıp dosyaları çözümleme sırasına alın. Önce kısa durum çıktısını, ardından yalnızca çözülmemiş yolları gösteren komutu kullanın.

  1. `git status` çalıştırarak çakışan dosyaları ve Git işleminin durumunu görün.
  2. `git diff –name-only –diff-filter=U` çalıştırarak çözülmemiş dosya adlarını listeleyin.
  3. İlgili dosyaları açıp değişiklikleri karşılaştırın ve çakışmayı çözün.
  4. Çözdüğünüz dosyayı `git add ` ile işaretleyin; ardından `git status` ile kalan çakışmaları kontrol edin.

git diff seçenekleriyle git merge conflict dosyalarını bulma komutu

`–name-only` yalnızca dosya yollarını, `–diff-filter=U` ise çözülmemiş durumdaki yolları seçer. Satır farklarını incelemek için `git diff`; çakışmalı içeriği birlikte görmek için `git diff –cc` kullanabilirsiniz. Git merge conflict dosyalarını bulma komutu listeleme yapar, çözüm üretmez.

Benzer kavramlardan farkı

`git status`, dosyaların durumunu özetler; `git diff –name-only –diff-filter=U` yalnızca çözülmemiş yolları sıralar. `git ls-files -u` ise Git indeksindeki çakışma kayıtlarını gösterir. Bir dosyayı `git add` ile işaretledikten sonra artık çözülmemiş listesinde görünmeyebilir; bu nedenle işaretçileri kaldırdığınızı da kontrol edin.

Git merge conflict dosyalarını bulma komutuyla başlayın, sonra `git status` çıktısını yeniden kontrol edin. İşlem hâlâ duruyorsa başka dosyalar da çözüm bekliyor olabilir; tüm çakışmalar giderilmeden merge, rebase veya cherry-pick adımını sürdürmeyin.

Ayrıca okuyun: Ev Giyiminde Rahat Kadın Sabahlık Seçenekleri

G
Yazar

Gökhan Güçlü

İçerik üreticisi Gökhan, SEO odaklı ve okuyucu dostu makaleler yazmaktadır.

Diğer Yazılar

Sektörel Bilgi: Gündemi Şekillendiren Trendler

2024’te küresel iş dünyasında yaşanan değişimler, sektörel bilgiye olan ihtiyacı her zamankinden daha fazla ön plana çıkarıyor. Belirsizliklerle dolu bu dönemde, doğru ve güncel bilgilere…

6 dk okuma