Quantcast
Aktuelles
Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Hardware & Software Praxis: Textvergleich mit git

Ich muss unter Linux häufig Textdateien vergleichen, wofür ich ein Diff-Tool benutze. Das funktioniert gut, wenn Text hinzugefügt oder gelöscht wurde, aber wenn viel Text nur verschoben wurde, wird es unübersichtlich. Kennen Sie ein Tool, das mit Verschiebungen gut umgehen kann?


Möglicherweise hilft Ihnen die Versionsverwaltung git, selbst wenn Sie sie sonst nicht verwenden: Mit dem Befehl git diff kann man auch zwei beliebige Dateien vergleichen, die nicht von git versioniert werden. Über den Parameter --color-moved weisen Sie das Programm an, verschobene Zeilen in anderen Farben darzustellen als Einfügungen und Löschungen.

Dem Parameter können Sie optional einen Wert übergeben, der gits Verhalten genauer bestimmt. --color-moved=dimmed-zebra zeigt beispielsweise verschobene Zeilen eher unscheinbar an, damit echte Einfügungen und Löschungen stärker ins Auge fallen. Daneben gibt es noch den Parameter --color-moved-ws=…, der festlegt, ob und welchen Weißraum git bei der Erkennung von Verschiebungen ignoriert. Wir finden zum Beispiel diese Kombination praktisch:

git diff --color-moved=dimmed-zebra --color-moved-ws=allow-indentation-change

Details zur Verschiebungserkennung und den anderen Werten für die Parameter erklärt die Dokumentation von git.
Quelle: c‘t
 
Zurück
Oben