Fark Denetleyicisi

İki metni karşılaştırın ve farkları bulun

Tam kılavuzu okuyun

Karşılaştırma Modları:

  • Satırlar: Satır satır karşılaştırma, kod ve yapılandırılmış metin için en iyisi
  • Kelimeler: Kelime kelime karşılaştırma, düzyazı ve belgeler için harika
  • Karakterler: Karakter karakter karşılaştırma, en ayrıntılı görünüm

Doğru karşılaştırma için diff kütüphanesi tarafından desteklenmektedir.

İki metin veya kod dosyasını karşılaştırın, farkları anında görün. Kod review, döküman versiyonlama ve içerik düzenleme için profesyonel diff (fark) analizi. Satır satır, kelime kelime veya karakter bazında karşılaştırma modları. Eklenen içerik yeşil, silinen içerik kırmızı renkte vurgulanır—GitHub ve GitLab tarzı görsel diff. Konfigürasyon dosyaları, SQL sorguları, JSON verisi ve metin dökümanlarını karşılaştırın. Boşluk ve büyük/küçük harf farkını yoksayma seçenekleri. Tüm işlemler tarayıcınızda—hassas kodunuz ve verileriniz gizli kalır.

Diff, iki metin dosyası arasındaki farkları tespit eden ve görselleştiren bir karşılaştırma aracıdır. 1974'te Douglas McIlroy tarafından Unix için geliştirilen 'diff' komutu, yazılım geliştirmenin temel taşlarından biridir. Modern diff algoritmaları (Myers, Patience, Histogram) en uzun ortak alt dizi (LCS) problemini çözerek minimum fark kümesini bulur. Diff, versiyon kontrol sistemlerinin (Git, SVN, Mercurial) temelini oluşturur—her commit aslında bir diff'tir. Türkiye'de yazılım ekipleri GitHub, GitLab ve Bitbucket'ta kod review yaparken diff görünümünü günlük kullanır. Diff formatları: Unified diff (+++/---), side-by-side (yan yana), inline (satır içi). Aracımız web tabanlı interaktif diff sunar.

Kod Review ve Versiyon Karşılaştırma

Pull request öncesi kod değişikliklerini inceleyin. Eski ve yeni versiyon arasındaki farkları görselleştirin. Bug fix veya feature branch'lerinde neyin değiştiğini anlayın. GitHub/GitLab erişiminiz yoksa yerel diff yapın.

Konfigürasyon Dosyası Kontrolü

Production ve development ortam config dosyalarını karşılaştırın. Nginx, Apache, Docker Compose, Kubernetes YAML dosyalarındaki farkları bulun. Deployment öncesi yapılandırma hatalarını tespit edin.

SQL ve Veritabanı Değişiklikleri

Veritabanı migration scriptlerini karşılaştırın. Stored procedure veya view değişikliklerini inceleyin. Tablo yapısı (DDL) farklarını tespit edin. Production'a deploy öncesi SQL review.

Döküman ve İçerik Düzenleme

Blog yazısı, makale veya rapor revizyonlarını karşılaştırın. Çeviri projelerinde kaynak ve hedef metni inceleyin. Sözleşme veya yasal döküman değişikliklerini tespit edin. Editör ve yazar arasında iş birliği.

API Yanıt Karşılaştırması

Farklı ortamlardan (dev, staging, prod) gelen API yanıtlarını karşılaştırın. Regression testlerinde beklenen ve gerçek sonucu diff yapın. JSON veya XML formatındaki verileri analiz edin.

Log ve Çıktı Analizi

Farklı zamanlardaki log çıktılarını karşılaştırın. Test sonuçlarındaki değişiklikleri tespit edin. Build çıktıları ve error log'ları arasındaki farkları bulun. Debugging sürecini hızlandırın.

Diff algoritması, iki metin arasındaki en küçük düzenleme mesafesini (edit distance) bulur. Myers Diff Algorithm (1986) en yaygın kullanılandır: (1) İki metni satır/kelime/karakter dizilerine böler. (2) En Uzun Ortak Alt Dizi (LCS—Longest Common Subsequence) problemini çözer. (3) LCS'de olmayan elemanlar 'eklenen' veya 'silinen' olarak işaretlenir. (4) Sonuç görselleştirilir: yeşil (+) eklenen, kırmızı (-) silinen. Aracımız 'diff' npm kütüphanesini kullanır. Üç mod: 'Satır'—kod ve yapılandırılmış metin için ideal. 'Kelime'—düzyazı ve dökümanlar için. 'Karakter'—en detaylı, küçük değişiklikleri yakalar. Boşluk ve büyük/küçük harf yoksayma seçenekleri esneklik sağlar.

ModDetay SeviyesiEn İyi KullanımPerformans
SatırSatır bazındaKod, config dosyalarıEn hızlı
KelimeKelime bazındaDüzyazı, dökümanOrta
KarakterKarakter bazındaKüçük değişikliklerYavaş (büyük metinler)

Diff karşılaştırma tüm modern tarayıcılarda (Chrome, Firefox, Safari, Edge) sorunsuz çalışır. İşlem tamamen istemci tarafında JavaScript ile gerçekleşir—metinleriniz sunucuya gönderilmez. Büyük dosyalar (1MB+) için satır modu önerilir—karakter modu performansı etkileyebilir. Sonuçlar panoya kopyalanabilir veya JSON olarak dışa aktarılabilir.

Sıkça Sorulan Sorular

Hangi karşılaştırma modunu kullanmalıyım?
Satır modu: Kod dosyaları, JSON, YAML, config dosyaları için ideal. Her satır bir birim olarak karşılaştırılır. Kelime modu: Blog yazıları, makaleler, raporlar için. Satır içindeki kelime değişikliklerini gösterir. Karakter modu: Çok küçük değişiklikleri (tek harf, noktalama) tespit etmek için. Büyük dosyalarda yavaş olabilir.
Boşlukları yoksaymak ne işe yarar?
Boşluk yoksayma, sekme/boşluk farkını ve satır sonu farklarını (Windows CRLF vs Unix LF) görmezden gelir. Özellikle farklı editörlerde düzenlenmiş kodlar karşılaştırılırken yararlıdır. İçerik aynı ama formatlama farklıysa gerçek değişikliklere odaklanmanızı sağlar.
Büyük/küçük harf duyarsız karşılaştırma ne zaman kullanılır?
SQL sorguları (SELECT vs select), HTML etiketleri (<DIV> vs <div>) veya büyük/küçük harf önemsiz metinler için kullanın. Dikkat: Programlama dillerinde değişken isimleri büyük/küçük harfe duyarlıdır—yanlışlıkla bug gizleyebilir.
Git diff ile bu araç arasındaki fark nedir?
Git diff, versiyon kontrol altındaki dosyaları commit'ler arasında karşılaştırır. Bu araç, herhangi iki metni yapıştırarak karşılaştırmanızı sağlar—Git gerekmez. E-posta içerikleri, veritabanı çıktıları, log dosyaları gibi Git'te olmayan metinler için idealdir. Web tabanlı olduğu için her yerden erişilebilir.
JSON veya XML dosyalarını karşılaştırabilir miyim?
Evet! Satır modunda JSON ve XML dosyaları karşılaştırılabilir. Öneri: JSON'u önce biçimlendirin (güzelleştirin) ki satır yapısı tutarlı olsun. Minified JSON'da tüm içerik tek satırda olduğu için diff anlamlı olmaz. JSON Biçimlendirici aracımızı kullanarak önce formatlamayı düşünün.
Diff sonuçlarını kaydedebilir miyim?
Evet, diff sonuçlarını panoya kopyalayabilirsiniz. Unified diff formatı, e-posta veya dokümantasyonda paylaşmak için uygundur. Büyük karşılaştırmalar için sonuçları metin dosyası olarak kaydedebilirsiniz. Tarayıcı kapatıldığında veriler silinir—kalıcı kayıt için kopyalamayı unutmayın.

İlgili Araçlar