Metin Karşılaştırma (Diff Checker)

İki metni veya kod parçasını satır satır karşılaştırın. Eklenen, silinen ve değişen satırlar, farklı olan kelimelere kadar vurgulanır.

Tarayıcınızda çalışırKayıt gerekmezHiçbir şey yüklenmez

Farkları görmek için her iki kutuya da metin yapıştırın.

Diff Checker (Metin Karşılaştırma) nasıl kullanılır?

  1. Orijinal metni sola, değiştirilmiş metni sağa yapıştırın ya da iki dosya açın.
  2. Karşılaştırma siz yazdıkça güncellenir. Yan yana veya Birleşik görünümü seçin.
  3. Yeniden girintileme gibi gürültüyü gizlemek için Boşlukları yok say, Harf büyüklüğünü yok say veya Boş satırları yok say'ı işaretleyin.
  4. Her birinin çevresinde üç satır bağlamla yalnızca değişikliklere odaklanmak için Değişmeyenleri gizle'yi kullanın.
  5. Patch olarak kopyala veya .diff indir'e tıklayarak git apply ya da patch ile uygulayabileceğiniz standart bir unified diff alın.

Bu diff checker nasıl çalışır?

Araç iki girdiyi de satırlara böler ve Myers fark algoritmasını çalıştırır; bu, git diff ve GNU diff'in de kullandığı O(ND) algoritmasıdır. Orijinal metni değiştirilmiş metne dönüştüren en kısa ekleme ve silme dizisini bulur; böylece sonuç mümkün olan en az değişmiş satırı gösterir. Baştaki ve sondaki aynı satırlar önce atlanır; bu sayede binlerce satırlık dosyaların karşılaştırması neredeyse anında tamamlanır.

Silinen bir satır ile eklenen bir satır yan yana geldiğinde, bunlar değiştirilmiş satır olarak eşleştirilir ve kelime kelime yeniden karşılaştırılır. Gerçekten değişen kelimeler daha belirgin vurgulanır; böylece uzun bir satırdaki yeniden adlandırılmış bir değişken veya düzenlenmiş bir sayı hemen göze çarpar.

Yan yana ve birleşik görünüm

Yan yana görünüm, orijinali sola ve yeni sürümü sağa, her ikisi için satır numaralarıyla yerleştirir. Düz metinleri, yapılandırma dosyalarını ve küçük kod değişikliklerini incelemek için en kolay görünümdür. Birleşik görünüm ise silinen (-) ve eklenen (+) satırları tek bir sütunda iç içe gösterir; bu, kod inceleme araçlarının ve patch dosyalarının kullandığı biçimdir.

Unified diff (patch) biçimi

Dışa aktarılan patch diff -u biçimini izler: bir ---/+++ başlığı, ardından @@ -l,s +l,s @@ ile başlayan bloklar (hunk); burada l ilk satır numarası, s ise bloğun her dosyadaki satır sayısıdır. Her blok üç satır değişmemiş bağlam içerir; böylece yakındaki satırlar yer değiştirmiş olsa bile patch -p0 veya git apply ile uygulanabilir.

Yok sayma seçenekleri ne zaman kullanılmalı?

  • Boşlukları yok say, yalnızca boşluk veya sekme farkı olan satırları eşit kabul eder. Kodu yeniden girintiledikten veya sekmeleri boşluğa çevirdikten sonra kullanın.
  • Harf büyüklüğünü yok say, büyük/küçük harfin önemli olmadığı SQL, HTML ve log dosyaları için kullanışlıdır.
  • Boş satırları yok say, yalnızca aralık amacıyla eklenen veya silinen satırları gizler.

Sıkça sorulan sorular

Metnim bir yere yükleniyor mu?
Hayır. Karşılaştırma tamamen tarayıcınızda JavaScript ile çalışır. Yapıştırdığınız hiçbir şey sunucuya gönderilmez; bu yüzden özel kodları, sözleşmeleri veya yapılandırma dosyalarını güvenle karşılaştırabilirsiniz.
Metinler ne kadar büyük olabilir?
On binlerce satırlık dosyalar tipik bir dizüstü bilgisayarda bir saniyeden çok daha kısa sürede karşılaştırılır. Algoritmanın maliyeti fark sayısıyla arttığı için en uzun süren, tamamen farklı iki büyük dosyadır.
Yapıştırmak yerine iki dosyayı karşılaştırabilir miyim?
Evet. Yerel bir dosya yüklemek için her kutunun üstündeki Dosya aç düğmelerini kullanın. Dosya tarayıcınız tarafından okunur ve asla yüklenmez.
Bir satır neden değiştirilmiş yerine silinmiş ve eklenmiş olarak gösteriliyor?
Satırlar yalnızca bir silinen satırlar bloğu doğrudan bir eklenen satırlar bloğunun yanında olduğunda “değiştirilmiş” olarak eşleştirilir. İki satırın ortak metni çok azsa kelime bazında vurgulama atlanır, çünkü tüm satırı değişmiş göstermekten daha karmaşık görünür.
JSON nesnelerini nasıl karşılaştırırım?
JSON Diff aracını kullanın. Ayrıştırılmış yapıyı karşılaştırır; böylece anahtar sırası ve biçimlendirme yanlış farklar oluşturmaz ve değişen yolları tam olarak listeler.

İlgili araçlar