10 Alat Perbandingan dan Perbedaan (Diff) File Terbaik di Linux


Saat menulis file program atau file teks biasa, pemrogram dan penulis terkadang ingin mengetahui perbedaan antara dua file atau dua versi dari file yang sama.

Saat Anda membandingkan dua file komputer di Linux, perbedaan antara isinya disebut diff. Deskripsi ini lahir dari referensi ke keluaran diff, utilitas perbandingan file baris perintah Unix yang terkenal.

Ada beberapa alat perbandingan file yang dapat Anda gunakan di Linux, dan dalam ulasan ini, kita akan melihat beberapa alat diff berbasis terminal dan GUI terbaik yang dapat Anda manfaatkan saat menulis kode atau file teks lainnya.

1. Perintah berbeda

Saya ingin memulai dengan alat baris perintah Unix asli yang menunjukkan perbedaan antara dua file komputer. Diff sederhana dan mudah digunakan, sudah diinstal sebelumnya di sebagian besar distribusi Linux, yang membandingkan file baris demi baris dan menampilkan perbedaan di antara file-file tersebut.

Untuk membandingkan dua file dan menampilkan perbedaannya.

diff file1.txt file2.txt

Anda dapat memeriksa entri manual untuk diff agar dapat menggunakannya dengan mudah.

man diff

Ada beberapa wrapper untuk alat diff yang meningkatkan fungsinya dan ini mencakup:

Perintah colordiff

Colordiff adalah skrip Perl yang menghasilkan keluaran yang sama seperti diff, namun dengan penyorotan warna dan sintaksis. Ini memiliki skema warna yang dapat disesuaikan.

Anda dapat menginstal Colordiff di sistem Linux Anda, menggunakan alat manajer paket default yang disebut yum, dnf, dan apt-get atau apt seperti yang ditunjukkan.

sudo apt install colordiff         [On Debian, Ubuntu and Mint]
sudo yum install colordiff         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/colordiff  [On Gentoo Linux]
sudo apk add colordiff             [On Alpine Linux]
sudo pacman -S colordiff           [On Arch Linux]
sudo zypper install colordiff      [On OpenSUSE]    

Untuk membandingkan direktori secara rekursif.

colordiff file1.txt file2.txt

Anda dapat memeriksa entri manual untuk colordiff seperti yang ditunjukkan.

man colordiff

Perintah wdiff

Utilitas wdiff adalah perintah front-end untuk diff yang digunakan untuk membandingkan file berdasarkan kata demi kata. Program ini sangat berguna ketika membandingkan dua teks untuk kata-kata yang diubah dan paragraf yang telah diisi ulang.

Untuk menginstal wdiff di sistem Linux Anda, jalankan:

sudo apt install wdiff         [On Debian, Ubuntu and Mint]
sudo yum install wdiff         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/wdiff  [On Gentoo Linux]
sudo apk add wdiff             [On Alpine Linux]
sudo pacman -S wdiff           [On Arch Linux]
sudo zypper install wdiff      [On OpenSUSE]    

Untuk menampilkan dua file secara berdampingan, sorot perbedaan tingkat kata.

wdiff file1.txt file2.txt

Gunakan manual wdiff untuk mengetahui cara menggunakannya di Linux.

man wdiff

2. Perintah Vimdiff

Vimdiff bekerja lebih canggih dibandingkan dengan utilitas diff, yang memungkinkan pengguna mengedit hingga empat versi file sambil menunjukkan perbedaannya. Saat Anda menjalankannya, Vimdiff membuka dua atau tiga, atau empat file menggunakan editor teks Vim.

Untuk menggunakan vimdiff, Anda harus menginstal Vim di sistem Anda, namun jika belum diinstal, Anda dapat menginstalnya menggunakan manajer paket Anda.

sudo apt install vim         [On Debian, Ubuntu and Mint]
sudo yum install vim         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/vim  [On Gentoo Linux]
sudo apk add vim             [On Alpine Linux]
sudo pacman -S vim           [On Arch Linux]
sudo zypper install vim      [On OpenSUSE]    

Untuk membandingkan dua file menggunakan vimdiff, Anda dapat menjalankan perintah berikut.

vimdiff file1.txt file2.txt

Anda juga dapat menggunakan vimdiff untuk membandingkan tiga file.

vimdiff file1.txt file2.txt file3.txt

Untuk informasi lebih detail dan pilihan penggunaan, Anda dapat mengakses halaman manual dengan menjalankan.

man vimdiff

3. licik

Perintah sdiff digunakan untuk membandingkan dua file secara berdampingan, menyoroti perbedaan di antara keduanya. Ini menampilkan konten dari dua file dalam kolom terpisah, dengan baris tambahan yang diawali dengan ">", baris yang dihapus diawali dengan "<", dan baris umum ditampilkan tanpa awalan apa pun .

Perintah sdiff biasanya disertakan dengan instalasi standar pada sebagian besar distribusi Linux. Namun, jika belum diinstal, Anda dapat menginstalnya menggunakan manajer paket Anda.

sudo apt install diffutils         [On Debian, Ubuntu and Mint]
sudo yum install diffutils         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/diffutils  [On Gentoo Linux]
sudo apk add diffutils             [On Alpine Linux]
sudo pacman -S diffutils           [On Arch Linux]
sudo zypper install diffutils      [On OpenSUSE]    

Untuk membandingkan dua file dan menampilkan perbedaannya secara berdampingan.

sdiff file1.txt file2.txt

Setelah melihat alat diff yang lama, mari kita segera beralih ke beberapa alat GUI diff yang tersedia di Linux.

4. Bandingkan

Kompare adalah alat perbedaan dan penggabungan grafis yang memungkinkan pengguna membandingkan dan melihat perbedaan antara file dan juga menggabungkannya.

Untuk menginstal Kompare di distribusi Linux, Anda dapat menggunakan manajer paket khusus untuk sistem Anda.

sudo apt install kompare         [On Debian, Ubuntu and Mint]
sudo yum install kompare         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/kompare  [On Gentoo Linux]
sudo apk add kompare             [On Alpine Linux]
sudo pacman -S kompare           [On Arch Linux]
sudo zypper install kompare      [On OpenSUSE]    

Beberapa fiturnya antara lain:

  • Mendukung berbagai format berbeda
  • Mendukung perbandingan direktori
  • Mendukung membaca file diff
  • Antarmuka yang dapat disesuaikan
  • Membuat dan menerapkan tambalan ke file sumber

5. Penggabungan Berbeda

DiffMerge adalah aplikasi GUI lintas platform untuk membandingkan dan menggabungkan file. Ia memiliki dua mesin fungsionalitas, mesin Diff yang menunjukkan perbedaan antara dua file, dan mendukung penyorotan dan pengeditan intra-baris, dan mesin Merge yang mengeluarkan baris-baris yang diubah antara tiga file.

Ini telah mendapat beberapa fitur berikut:

  • Mendukung perbandingan direktori
  • Integrasi peramban file
  • Sangat dapat dikonfigurasi

6. Meld – Alat Diff

Meld adalah alat pembeda dan penggabungan GUI yang ringan, yang memungkinkan pengguna membandingkan file, direktori, dan program dengan versi yang dikontrol. Dibuat khusus untuk pengembang, ia hadir dengan fitur-fitur berikut:

  • Perbandingan file dan direktori dua arah dan tiga arah
  • Pembaruan perbandingan file saat pengguna mengetik lebih banyak kata
  • Membuat penggabungan lebih mudah dengan menggunakan mode penggabungan otomatis dan tindakan pada blok yang diubah
  • Perbandingan mudah menggunakan visualisasi
  • Mendukung Git, Mercurial, Subversion, Bazaar dan masih banyak lagi

Untuk menginstal Meld di Linux, Anda dapat menggunakan manajer paket untuk menginstalnya dari repositori resmi.

sudo apt install meld         [On Debian, Ubuntu and Mint]
sudo yum install meld         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/meld  [On Gentoo Linux]
sudo apk add meld             [On Alpine Linux]
sudo pacman -S meld           [On Arch Linux]
sudo zypper install meld      [On OpenSUSE]    

7. Difusi – Alat GUI Diff

Diffuse adalah alat diff dan penggabungan GUI populer, gratis, kecil, dan sederhana lainnya yang dapat Anda gunakan di Linux. Ditulis dengan Python, Ia menawarkan dua fungsi utama, yaitu: perbandingan file dan kontrol versi, memungkinkan pengeditan file, dan menggabungkan file, dan juga menampilkan perbedaan antar file.

Untuk menginstal Diffuse di Linux, Anda dapat menggunakan manajer paket seperti yang ditunjukkan.

sudo apt install diffuse         [On Debian, Ubuntu and Mint]
sudo yum install diffuse         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/diffuse  [On Gentoo Linux]
sudo apk add diffuse             [On Alpine Linux]
sudo pacman -S diffuse           [On Arch Linux]
sudo zypper install diffuse      [On OpenSUSE]    

Anda dapat melihat ringkasan perbandingan, memilih baris teks dalam file menggunakan penunjuk tetikus, mencocokkan baris dalam file yang berdekatan, dan mengedit file yang berbeda.

Fitur lainnya meliputi:

  • Penyorotan sintaksis
  • Pintasan keyboard untuk navigasi yang mudah
  • Mendukung pembatalan tanpa batas
  • Dukungan Unicode
  • Mendukung Git, CVS, Darcs, Mercurial, RCS, Subversion, SVK, dan Monotone

8. XXdiff – Alat Diff dan Gabung

XXdiff adalah alat pembanding dan penggabungan file dan direktori gratis dan kuat yang berjalan pada sistem operasi mirip Unix seperti Linux, Solaris, HP/UX, IRIX, dan DEC Tru64. Salah satu keterbatasan XXdiff adalah kurangnya dukungan untuk file Unicode dan pengeditan sebaris file diff.

Ini memiliki daftar fitur berikut:

  • Perbandingan dangkal dan rekursif dari dua, tiga file atau dua direktori
  • Sorotan perbedaan horizontal
  • Penggabungan file secara interaktif dan penyimpanan output yang dihasilkan
  • Mendukung penggabungan tinjauan/pemolisian
  • Mendukung alat diff eksternal seperti GNU diff, SIG diff, Cleareddiff, dan banyak lagi
  • Dapat diperluas menggunakan skrip
  • Dapat disesuaikan sepenuhnya menggunakan file sumber daya ditambah banyak fitur kecil lainnya

9. KDiff3 – – Alat Diff dan Gabung

KDiff3 adalah alat diff dan penggabungan lintas platform keren lainnya yang dibuat dari KDevelop, yang berfungsi pada semua platform mirip Unix termasuk Linux dan Mac OS X, Windows.

Untuk menginstal KDiff3 di Linux, Anda dapat menggunakan manajer paket seperti yang ditunjukkan.

sudo apt install kdiff3         [On Debian, Ubuntu and Mint]
sudo yum install kdiff3         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/kdiff3  [On Gentoo Linux]
sudo apk add kdiff3             [On Alpine Linux]
sudo pacman -S kdiff3           [On Arch Linux]
sudo zypper install kdiff3      [On OpenSUSE]    

Itu dapat membandingkan atau menggabungkan dua hingga tiga file atau direktori dan memiliki fitur penting berikut:

  • Menunjukkan perbedaan baris demi baris dan karakter demi karakter
  • Mendukung penggabungan otomatis
  • Editor bawaan untuk menangani konflik penggabungan
  • Mendukung Unicode, UTF-8, dan banyak codec lainnya
  • Memungkinkan pencetakan perbedaan
  • Dukungan integrasi Windows Explorer
  • Juga mendukung deteksi otomatis melalui byte-order-mark “BOM”
  • Mendukung penyelarasan garis secara manual
  • GUI intuitif dan banyak lagi

10. TkDiff

TkDiff juga merupakan pembungkus GUI lintas platform yang mudah digunakan untuk alat diff Unix, yang memberikan tampilan berdampingan tentang perbedaan antara dua file masukan. Itu dapat berjalan di Linux, Windows, dan Mac OS X.

Selain itu, ia memiliki beberapa fitur menarik lainnya termasuk penanda diff, peta perbedaan grafis untuk navigasi yang mudah dan cepat, dan masih banyak lagi.

Untuk menginstal TkDiff di Linux, Anda dapat menggunakan manajer paket seperti yang ditunjukkan.

sudo apt install tkdiff         [On Debian, Ubuntu and Mint]
sudo yum install tkdiff         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/tkdiff  [On Gentoo Linux]
sudo apk add tkdiff             [On Alpine Linux]
sudo pacman -S tkdiff           [On Arch Linux]
sudo zypper install tkdiff      [On OpenSUSE]    
Kesimpulan

Setelah membaca ulasan tentang beberapa alat pembanding dan penggabungan file dan direktori terbaik ini, Anda mungkin ingin mencoba beberapa di antaranya.

Ini mungkin bukan satu-satunya alat diff yang tersedia yang dapat Anda temukan di Linux, tetapi alat-alat tersebut dikenal menawarkan beberapa fitur terbaik, Anda mungkin juga ingin memberi tahu kami tentang alat-alat diff lainnya di luar sana yang telah Anda uji dan anggap layak untuk Anda gunakan. disebutkan di antara yang terbaik.