GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Du liebst Diff nicht? Verwenden Sie stattdessen Meld

Meld ist eines meiner wichtigsten Werkzeuge für die Arbeit mit Code und Datendateien. Es ist ein grafisches Diff-Tool, wenn Sie also jemals den diff verwendet haben Befehl und hatte Mühe, die Ausgabe zu verstehen, Meld ist hier, um zu helfen.

Hier ist eine brillante Beschreibung von der Website des Projekts:

„Meld ist ein visuelles Vergleichs- und Zusammenführungstool, das sich an Entwickler richtet. Meld hilft Ihnen beim Vergleichen von Dateien, Verzeichnissen und versionierten Projekten. Es bietet einen Zwei- und Drei-Wege-Vergleich von Dateien und Verzeichnissen und unterstützt viele gängige Versionskontrollsysteme .

"Meld hilft Ihnen, Codeänderungen zu überprüfen und Patches zu verstehen. Es kann Ihnen sogar dabei helfen, herauszufinden, was in dieser Zusammenführung vor sich geht, die Sie immer wieder vermeiden."

Sie können Meld auf Debian/Ubuntu-Systemen (einschließlich Raspbian) installieren mit:

$ sudo apt install meld

Auf Fedora oder ähnlichem ist es:

$ sudo dnf install meld

Meld ist plattformübergreifend – es gibt eine Windows-Installation mit dem Chocolately-Paketmanager. Obwohl es unter macOS nicht offiziell unterstützt wird, sind Builds für Mac verfügbar, und Sie können es unter Homebrew installieren mit:

$ brew cask install meld

Weitere Optionen finden Sie auf der Homepage von Meld.

Melden vs. der diff-Befehl

Wenn Sie zwei ähnliche Dateien haben (vielleicht ist eine eine modifizierte Version der anderen) und die Änderungen zwischen ihnen sehen möchten, können Sie diff ausführen Befehl, um ihre Unterschiede im Terminal zu sehen:

Dieses Beispiel zeigt die Unterschiede zwischen conway1.py und conway2.py . Es zeigt, dass ich:

  • Shebang und zweite Zeile entfernt
  • Entfernt (Objekt) aus der Klassendeklaration
  • Dokstring zur Klasse hinzugefügt
  • Die Reihenfolge von alive vertauscht und Nachbarn ==2 in einer Methode

Hier ist dasselbe Beispiel mit meld Befehl. Sie können denselben Vergleich von der Befehlszeile aus ausführen mit:

$ meld conway1.py conway2.py

Viel klarer!

Sie können Änderungen leicht sehen und Änderungen zwischen Dateien zusammenführen, indem Sie auf die Pfeile klicken (sie funktionieren in beide Richtungen). Sie können die Dateien sogar live bearbeiten (Meld fungiert auch als einfacher Texteditor mit Live-Vergleichen während der Eingabe) – speichern Sie sie einfach, bevor Sie das Fenster schließen.

Sie können sogar drei verschiedene Dateien vergleichen und bearbeiten:

Melds Git-Awareness

Hoffentlich verwenden Sie ein Versionskontrollsystem wie Git. Wenn dies der Fall ist, besteht Ihr Vergleich nicht zwischen zwei verschiedenen Dateien, sondern darin, Unterschiede zwischen der aktuellen Arbeitsdatei und derjenigen zu finden, die Git kennt. Meld versteht dies, also wenn Sie meld conway.py ausführen , wobei conway.py von Git bekannt ist, zeigt es Ihnen alle Änderungen, die seit dem letzten Git-Commit vorgenommen wurden:

Sie können Änderungen sehen, die in der aktuellen Version (rechts) und der Repository-Version (links) vorgenommen wurden. Sie können sehen, dass ich seit dem letzten Commit eine Methode gelöscht und einen Parameter und eine Schleife hinzugefügt habe.

Wenn Sie meld . ausführen , sehen Sie alle Änderungen im aktuellen Verzeichnis (oder im gesamten Repository, wenn Sie sich im Stammverzeichnis befinden):

Sie können sehen, dass eine einzelne Datei geändert wurde, eine andere Datei nicht versioniert ist (was bedeutet, dass sie neu für Git ist, also muss ich git hinzufügen die Datei vor dem Vergleich) und viele andere unveränderte Dateien. Verschiedene Anzeigeoptionen werden durch Symbole am oberen Rand bereitgestellt.

Sie können auch zwei Verzeichnisse vergleichen, was manchmal praktisch ist:

Schlussfolgerung

Weitere Linux-Ressourcen

  • Spickzettel für Linux-Befehle
  • Spickzettel für fortgeschrittene Linux-Befehle
  • Kostenloser Online-Kurs:RHEL Technical Overview
  • Spickzettel für Linux-Netzwerke
  • SELinux-Spickzettel
  • Spickzettel für allgemeine Linux-Befehle
  • Was sind Linux-Container?
  • Unsere neuesten Linux-Artikel

Selbst normale Benutzer können Vergleiche mit diff schwer zu entziffern finden. Ich finde, dass die von Meld bereitgestellten Visualisierungen einen großen Unterschied bei der Fehlerbehebung bei Änderungen zwischen Dateien machen. Darüber hinaus verfügt Meld über ein hilfreiches Bewusstsein für die Versionskontrolle und hilft Ihnen, Git-Commits zu vergleichen, ohne viel darüber nachzudenken. Probieren Sie Meld aus und machen Sie die Fehlerbehebung für die Augen etwas einfacher.


Dies wurde ursprünglich auf Ben Nuttalls Tooling-Blog veröffentlicht und wird mit Genehmigung wiederverwendet.


Linux
  1. Verwenden Sie systemd-Timer anstelle von Cronjobs

  2. So verwenden Sie den Grep-Befehl, um Text in Dateien zu finden

  3. diff-Befehlsbeispiele in Linux

  4. diff:Befehl nicht gefunden

  5. wie man python2.7 pip anstelle von default pip verwendet

So verwenden Sie den Linux-diff-Befehl

So verwenden Sie den SFTP-Befehl zum Übertragen von Dateien

So verwenden Sie den SCP-Befehl zum Übertragen von Dateien

So vergleichen Sie Dateien unter Linux mit dem Tool Meld (Diff/Merge).

Linux vs. Mac OS:15 Gründe, warum Sie Linux anstelle von Mac OS verwenden sollten

So verwenden Sie Linux-FTP-Befehle