Text Diff Checker

Bandingkan dua teks atau potongan kode baris demi baris. Baris yang ditambah, dihapus, dan diubah disorot, hingga ke kata-kata yang berbeda.

Berjalan di browser AndaTanpa daftarTidak ada yang diunggah

Tempel teks di kedua kotak untuk melihat perbedaannya.

Cara menggunakan Text Diff Checker

  1. Tempel teks asli di kiri dan teks yang diubah di kanan, atau buka dua file.
  2. Perbandingan diperbarui saat Anda mengetik. Pilih tampilan Berdampingan atau Unified.
  3. Centang Abaikan spasi, Abaikan huruf besar/kecil, atau Abaikan baris kosong untuk menyembunyikan gangguan seperti indentasi ulang.
  4. Gunakan Sembunyikan yang tidak berubah untuk fokus pada perubahan dengan tiga baris konteks di sekitarnya.
  5. Klik Salin sebagai patch atau Unduh .diff untuk mendapatkan unified diff standar yang bisa diterapkan dengan git apply atau patch.

Cara kerja diff checker ini

Tool ini memecah kedua input menjadi baris dan menjalankan algoritma diff Myers, algoritma O(ND) yang sama dengan yang dipakai git diff dan GNU diff. Algoritma ini mencari urutan penyisipan dan penghapusan terpendek yang mengubah teks asli menjadi teks yang diubah, sehingga hasilnya menampilkan baris berubah sesedikit mungkin. Baris awal dan akhir yang identik dilewati terlebih dahulu, sehingga perbandingan file berisi ribuan baris tetap hampir instan.

Jika baris yang dihapus dan baris yang ditambah bersebelahan, keduanya dipasangkan sebagai baris diubah lalu dibandingkan lagi kata demi kata. Kata yang benar-benar berubah mendapat sorotan lebih kuat, sehingga variabel yang diganti nama atau angka yang diedit menonjol di dalam baris panjang.

Tampilan berdampingan vs. unified

Berdampingan menaruh versi asli di kiri dan versi baru di kanan, dengan nomor baris untuk keduanya. Ini tampilan termudah untuk meninjau tulisan, file konfigurasi, dan perubahan kode singkat. Tampilan Unified menyelang-nyeling baris yang dihapus (-) dan ditambah (+) dalam satu kolom, format yang dipakai tool code review dan file patch.

Format unified diff (patch)

Patch yang diekspor mengikuti format diff -u: header ---/+++, lalu hunk yang diawali @@ -l,s +l,s @@, dengan l sebagai nomor baris pertama dan s jumlah baris hunk di setiap file. Setiap hunk menyertakan tiga baris konteks yang tidak berubah, sehingga bisa diterapkan dengan patch -p0 atau git apply meskipun baris di sekitarnya sudah bergeser.

Kapan memakai opsi abaikan

  • Abaikan spasi menganggap baris sama jika hanya berbeda di spasi atau tab. Gunakan setelah mengindentasi ulang kode atau mengganti tab menjadi spasi.
  • Abaikan huruf besar/kecil berguna untuk SQL, HTML, dan file log yang kapitalisasinya tidak penting.
  • Abaikan baris kosong menyembunyikan baris yang hanya ditambah atau dihapus sebagai jarak.

Pertanyaan yang sering diajukan

Apakah teks saya diunggah ke suatu tempat?
Tidak. Perbandingan berjalan sepenuhnya di browser Anda dengan JavaScript. Tidak ada yang Anda tempel dikirim ke server, jadi Anda bisa dengan aman membandingkan kode privat, kontrak, atau file konfigurasi.
Seberapa besar teks yang bisa dibandingkan?
File berisi puluhan ribu baris dibandingkan dalam waktu jauh di bawah satu detik di laptop biasa. Karena beban algoritma bertambah seiring jumlah perbedaan, dua file besar yang sama sekali berbeda butuh waktu paling lama.
Bisakah saya membandingkan dua file alih-alih menempel?
Bisa. Gunakan tombol Buka file di atas setiap kotak untuk memuat file lokal. File dibaca oleh browser Anda dan tidak pernah diunggah.
Mengapa sebuah baris ditampilkan sebagai dihapus dan ditambah, bukan diubah?
Baris dipasangkan sebagai “diubah” hanya jika blok baris yang dihapus berada tepat di sebelah blok baris yang ditambah. Jika kedua baris hanya berbagi sedikit teks, sorotan per kata dilewati karena justru akan lebih membingungkan daripada menampilkan seluruh baris sebagai berubah.
Bagaimana cara membandingkan objek JSON?
Gunakan tool JSON Diff. Tool ini membandingkan struktur hasil parsing, sehingga urutan key dan format tidak menimbulkan perbedaan palsu, dan mencantumkan path persis yang berubah.

Tools terkait