diff-highlight: ein besseres diff für Git

Das voreingestellte diff-Programm von Git lässt viel zu wünschen übrig.

Klar, wir können git --word-diff ausführen, um die Änderungen besser zu sehen, aber damit ignorieren wir manchmal Informationen. In diesem Fall, zum Beispiel, zeigt es nicht die hintere Leerzeichen vor den HTML-Tags.

Und mit anderen diff-Programmen? Lass uns diff-highlight nachsehen...

Letzteres ist besser, oder? Wie kann man es konfigurieren? Ich entdeckte wie in einer Webseite, wo ich nur die Befehle verstand, was genug war. Ich erkläre dich wie, denn ich weiß es nun.

Zuerst braucht man die Git-Version 2.9 oder höher.

sudo apt update
sudo apt install git
git --version  # Muss gleich oder größer als Version 2.9

Obwohl du schon die nötige Git-Version installiert hast, muss man noch diff-highlight mit Ausführungsrechten konfigurieren und eine Symbolische Verknüpfung in einem Ordner erstellen, der im $PATH-Umgebungsvariable ist. Hier erstelle ich eine Symbolische Verknüpfung in /usr/local/bin/...

sudo chmod +x /usr/share/doc/git/contrib/diff-highlight/diff-highlight
sudo ln -s /usr/share/doc/git/contrib/diff-highlight/diff-highlight /usr/local/bin/diff-highlight

Nun können wir diff-highlight ausführen, wenn wir wollen, ohne Git zu nutzen. Wir müssen die Datei .gitconfig konfigurieren, so dass jedes Mal, wenn wir git diff laufen lassen, dieses Programm benutzt wird, entweder für ein bestimmtes Project oder für jedes. Weil ich es immmer nutzen will, füge ich die folgende Zeile in ~/.gitconfig ein:

[core]
    pager = diff-highlight | less -r

Der Einfachheit halber führe ich den Auslass von less durch ein Rohr.

Fertig! Falls wegen eines komisches Grund du Sehnsucht nach das alte diff hast, kannst du die Datei .gitconfig zurückstellen.

Kommentare