9 καλύτερα εργαλεία σύγκρισης αρχείων και διαφοράς (διαφορά) για Linux


Ενώ γράφουν αρχεία προγράμματος ή κανονικά αρχεία κειμένου, οι προγραμματιστές και οι συγγραφείς θέλουν μερικές φορές να γνωρίζουν τη διαφορά μεταξύ δύο αρχείων ή δύο εκδόσεων του ίδιου αρχείου. Όταν συγκρίνετε δύο αρχεία υπολογιστή σε Linux, η διαφορά μεταξύ των περιεχομένων τους ονομάζεται διαφορά. Αυτή η περιγραφή γεννήθηκε από μια αναφορά στην έξοδο του diff, το γνωστό βοηθητικό πρόγραμμα σύγκρισης αρχείων γραμμής εντολών Unix.

Υπάρχουν πολλά εργαλεία σύγκρισης αρχείων που μπορείτε να χρησιμοποιήσετε στο Linux και σε αυτήν την ανασκόπηση, θα εξετάσουμε μερικά από τα καλύτερα εργαλεία που βασίζονται σε τερματικά και διαφοροποιήσεις GUI που μπορείτε να επωφεληθείτε κατά τη σύνταξη κώδικα ή άλλων αρχείων κειμένου.

1. Εντολή diff

Μου αρέσει να ξεκινήσω με το αρχικό εργαλείο γραμμής εντολών Unix που σας δείχνει τη διαφορά μεταξύ δύο αρχείων υπολογιστή. Το Diff είναι απλό και εύκολο στη χρήση, έρχεται προεγκατεστημένο στις περισσότερες διανομές Linux. Συγκρίνει τα αρχεία γραμμή προς γραμμή και βγάζει τη διαφορά μεταξύ τους.

Μπορείτε να ελέγξετε τη χειροκίνητη καταχώριση για διαφορά για να τη χρησιμοποιήσετε εύκολα.

# man diff

Υπάρχουν ορισμένα περιτυλίγματα για το εργαλείο διαφορά που ενισχύουν τη λειτουργικότητά του και αυτά περιλαμβάνουν:

Εντολή colordiff

Το Colordiff είναι ένα σενάριο Perl που παράγει την ίδια έξοδο με το διαφορ, αλλά με επισήμανση χρώματος και σύνταξης. Διαθέτει προσαρμόσιμους συνδυασμούς χρωμάτων.

Μπορείτε να εγκαταστήσετε το Colordiff στα συστήματα Linux σας, χρησιμοποιώντας τα προεπιλεγμένα εργαλεία διαχείρισης πακέτων που ονομάζονται apt-get όπως φαίνεται.

# yum install colordiff             [On CentOS/RHEL/Fedora]
# dnf install colordiff             [On Fedora 23+ version]
$ sudo apt-get install colordiff    [On Debian/Ubuntu/Mint]

Μπορείτε να δείτε τη μη αυτόματη καταχώριση για το Colordiff όπως φαίνεται.

# man colordiff

Εντολή wdiff

Το βοηθητικό πρόγραμμα wdiff είναι μια εντολή διεπαφής σε diff που χρησιμοποιείται για τη σύγκριση αρχείων λέξη προς λέξη. Αυτό το πρόγραμμα είναι πολύ χρήσιμο όταν συγκρίνετε δύο κείμενα για αλλαγμένες λέξεις και για τα οποία έχουν ξαναγεμιστεί παράγραφοι.

Για να εγκαταστήσετε το wdiff στα συστήματα σας Linux, εκτελέστε:

# yum install wdiff             [On CentOS/RHEL/Fedora]
# dnf install wdiff             [On Fedora 23+ version]
$ sudo apt-get install wdiff    [On Debian/Ubuntu/Mint]

Χρησιμοποιήστε το εγχειρίδιο wdiff για τον τρόπο χρήσης του σε Linux.

# man wdiff

2. Εντολή Vimdiff

Το Vimdiff λειτουργεί με προηγμένο τρόπο σε σύγκριση με το βοηθητικό πρόγραμμα diff. Επιτρέπει σε έναν χρήστη να επεξεργαστεί έως και τέσσερις εκδόσεις ενός αρχείου ενώ δείχνει τις διαφορές τους. Όταν το εκτελείτε, το Vimdiff ανοίγει δύο ή τρία ή τέσσερα αρχεία χρησιμοποιώντας το πρόγραμμα επεξεργασίας κειμένου vim.

Επισκεφτείτε την αρχική σελίδα: http://vimdoc.sourceforge.net/htmldoc/diff.html

Έχοντας εξετάσει τα εργαλεία διαφορών της παλιάς σχολής, ας μεταβούμε γρήγορα σε ορισμένα εργαλεία διαφορών GUI που είναι διαθέσιμα στο Linux.

3. Συγκρίνετε

Το Kompare είναι ένα περιτύλιγμα διαφορικού γραφικού περιβάλλοντος που επιτρέπει στους χρήστες να βλέπουν τις διαφορές μεταξύ των αρχείων και επίσης να τα συγχωνεύουν.

Μερικά από τα χαρακτηριστικά του περιλαμβάνουν:

  1. Υποστηρίζει πολλές μορφές διαφορετικών
  2. Υποστηρίζει σύγκριση καταλόγων
  3. Υποστηρίζει την ανάγνωση διαφορετικών αρχείων
  4. Προσαρμόσιμη διεπαφή
  5. Δημιουργία και εφαρμογή ενημερώσεων κώδικα σε αρχεία προέλευσης

Επισκεφτείτε την αρχική σελίδα: https://www.kde.org/applications/development/kompare/

4. DiffMerge

Το DiffMerge είναι μια εφαρμογή γραφικού περιβάλλοντος εργασίας πολλαπλών πλατφορμών για σύγκριση και συγχώνευση αρχείων. Διαθέτει δύο μηχανές λειτουργικότητας, τη μηχανή Diff που δείχνει τη διαφορά μεταξύ δύο αρχείων, η οποία υποστηρίζει επισήμανση και επεξεργασία εντός γραμμής και μια μηχανή συγχώνευσης που βγάζει τις αλλαγμένες γραμμές μεταξύ τριών αρχείων.

Έχει τα εξής χαρακτηριστικά:

  1. Υποστηρίζει σύγκριση καταλόγου
  2. Ενσωμάτωση προγράμματος περιήγησης αρχείων
  3. Υψηλή διαμόρφωση

Επισκεφτείτε την αρχική σελίδα: https://sourcegear.com/diffmerge/

5. Meld – Diff Tool

Το Meld είναι ένα ελαφρύ εργαλείο διαφοροποίησης και συγχώνευσης GUI. Επιτρέπει στους χρήστες να συγκρίνουν αρχεία, καταλόγους και προγράμματα ελεγχόμενης έκδοσης. Σχεδιασμένο ειδικά για προγραμματιστές, διαθέτει τα ακόλουθα χαρακτηριστικά:

  1. Αμφίδρομη και τριπλή σύγκριση αρχείων και καταλόγων
  2. Ενημέρωση της σύγκρισης αρχείων καθώς οι χρήστες πληκτρολογούν περισσότερες λέξεις
  3. Κάνει τις συγχωνεύσεις ευκολότερες χρησιμοποιώντας τη λειτουργία αυτόματης συγχώνευσης και τις ενέργειες σε άλλα μπλοκ
  4. Εύκολες συγκρίσεις με χρήση οπτικοποιήσεων
  5. Υποστηρίζει Git, Mercurial, Subversion, Bazaar και πολλά άλλα

Επισκεφτείτε την αρχική σελίδα: http://meldmerge.org/

6. Diffuse – GUI Diff Tool

Το Diffuse είναι ένα άλλο δημοφιλές, δωρεάν, μικρό και απλό εργαλείο διαφοροποίησης και συγχώνευσης GUI που μπορείτε να χρησιμοποιήσετε στο Linux. Γραμμένο σε Python, προσφέρει δύο κύριες λειτουργίες, δηλαδή: σύγκριση αρχείων και έλεγχο εκδόσεων, επιτρέποντας την επεξεργασία αρχείων, τη συγχώνευση αρχείων και επίσης την έξοδο της διαφοράς μεταξύ των αρχείων.

Μπορείτε να προβάλετε μια σύνοψη σύγκρισης, να επιλέξετε γραμμές κειμένου σε αρχεία χρησιμοποιώντας ένα δείκτη του ποντικιού, να ταιριάξετε γραμμές σε γειτονικά αρχεία και να επεξεργαστείτε διαφορετικό αρχείο. Άλλα χαρακτηριστικά περιλαμβάνουν:

  1. Επισήμανση σύνταξης
  2. Συντομεύσεις πληκτρολογίου για εύκολη πλοήγηση
  3. Υποστηρίζει απεριόριστη αναίρεση
  4. Υποστήριξη Unicode
  5. Υποστηρίζει Git, CVS, Darcs, Mercurial, RCS, Subversion, SVK και Monotone

Επισκεφτείτε την αρχική σελίδα: http://diffuse.sourceforge.net/

7. XXdiff – Εργαλείο Diff and Merge

Το XXdiff είναι ένα δωρεάν, ισχυρό εργαλείο σύγκρισης και συγχώνευσης αρχείων και καταλόγων που εκτελείται σε λειτουργικά συστήματα όπως το Unix όπως Linux, Solaris, HP/UX, IRIX, DEC Tru64. Ένας περιορισμός του XXdiff είναι η έλλειψη υποστήριξης αρχείων unicode και ενσωματωμένης επεξεργασίας αρχείων διαφορών.

Έχει την ακόλουθη λίστα χαρακτηριστικών:

  1. Ρηχή και αναδρομική σύγκριση δύο, τριών αρχείων ή δύο καταλόγων
  2. Επισήμανση οριζόντιας διαφοράς
  3. Διαδραστική συγχώνευση αρχείων και αποθήκευση των αποτελεσμάτων που προκύπτουν
  4. Υποστηρίζει συγχώνευση αξιολογήσεων/αστυνόμευσης
  5. Υποστηρίζει εργαλεία εξωτερικών διαφορών όπως GNU diff, SIG diff, Cleareddiff και πολλά άλλα
  6. Επεκτάσιμο με χρήση σεναρίων
  7. Πλήρως προσαρμόσιμο με χρήση αρχείου πόρων και πολλών άλλων δευτερευόντων χαρακτηριστικών

Επισκεφτείτε την αρχική σελίδα: http://furius.ca/xxdiff/

8. KDiff3 – – Εργαλείο Diff and Merge

Το KDiff3 είναι ένα ακόμη ωραίο εργαλείο διαφοροποίησης και συγχώνευσης μεταξύ πλατφορμών που δημιουργήθηκε από το KDevelop. Λειτουργεί σε όλες τις πλατφόρμες που μοιάζουν με Unix, συμπεριλαμβανομένων των Linux και Mac OS X, Windows.

Μπορεί να συγκρίνει ή να συγχωνεύσει δύο έως τρία αρχεία ή καταλόγους και έχει τα ακόλουθα αξιοσημείωτα χαρακτηριστικά:

  1. Δηλώνει διαφορές γραμμή προς γραμμή και χαρακτήρα προς χαρακτήρα
  2. Υποστηρίζει αυτόματη συγχώνευση
  3. Ενσωματωμένο πρόγραμμα επεξεργασίας για την αντιμετώπιση συγκρούσεων συγχώνευσης
  4. Υποστηρίζει Unicode, UTF-8 και πολλούς άλλους κωδικοποιητές
  5. Επιτρέπει την εκτύπωση διαφορών
  6. Υποστήριξη ενοποίησης του Windows Explorer
  7. Υποστηρίζει επίσης αυτόματη ανίχνευση μέσω byte-order-mark BOM
  8. Υποστηρίζει τη μη αυτόματη ευθυγράμμιση γραμμών
  9. Διαισθητικό GUI και πολλά άλλα

Επισκεφτείτε την αρχική σελίδα: http://kdiff3.sourceforge.net/

9. TkDiff

Το TkDiff είναι επίσης ένα πολυπλατφορμικό, εύχρηστο περιτύλιγμα GUI για το εργαλείο Unix diff. Παρέχει μια πλάι-πλάι άποψη των διαφορών μεταξύ δύο αρχείων εισόδου. Μπορεί να τρέξει σε Linux, Windows και Mac OS X.

Επιπλέον, έχει μερικά άλλα συναρπαστικά χαρακτηριστικά, όπως σελιδοδείκτες διαφορών, έναν γραφικό χάρτη διαφορών για εύκολη και γρήγορη πλοήγηση και πολλά άλλα.

Επισκεφτείτε την αρχική σελίδα: https://sourceforge.net/projects/tkdiff/

Έχοντας διαβάσει αυτήν την ανασκόπηση ορισμένων από τα καλύτερα εργαλεία σύγκρισης και συγχώνευσης αρχείων και καταλόγων, πιθανότατα θέλετε να δοκιμάσετε μερικά από αυτά. Αυτά μπορεί να μην είναι τα μόνα εργαλεία διαφορών που μπορείτε να βρείτε στο Linux, αλλά είναι γνωστό ότι προσφέρουν μερικές από τις καλύτερες δυνατότητες, μπορείτε επίσης να μας ενημερώσετε για οποιαδήποτε άλλα εργαλεία διαφορών εκεί έξω που έχετε δοκιμάσει και πιστεύετε ότι αξίζουν αναφέρεται μεταξύ των καλύτερων.