615 Stimmen

Einfärben von diff auf der Kommandozeile

Wie kann ich eine Diff. so einfärben, dass sie gut aussieht?

Ich möchte es für die Kommandozeile, also bitte keine GUI-Lösungen.

7 Stimmen

Ein bestimmtes Betriebssystem/Shell?

4 Stimmen

Versuchen Sie github.com/walles/riff . Als zusätzlicher Bonus wird hervorgehoben, welche Teile der Linien sich geändert haben.

0 Stimmen

Emacs macht großartige Farbunterschiede in einem Terminal; ist es das, was Sie mit nicht-GUI meinen? Siehe unix.stackexchange.com/a/613399/80268 .

10voto

Jongwook Choi Punkte 7417

Keiner hat erwähnt delta bis jetzt. Es unterstützt die syntaxfarbene Diff-Ansicht mit Syntaxhervorhebung .

Image source: Delta

4voto

Naveen Punkte 85

Ich würde Ihnen vorschlagen, dass Sie diff-so-fancy einen Versuch. Ich benutze es während meiner Arbeit und es scheint wirklich großartig zu sein. Es kommt mit vielen Optionen verpackt und es ist wirklich einfach, Ihre Diffs zu konfigurieren, wie Sie wollen.

Sie können es wie folgt installieren:

sudo npm install -g diff-so-fancy

oder auf Mac:

brew install diff-so-fancy

Anschließend können Sie Ihre Diffs wie folgt markieren:

diff -u file1 file2 | diff-so-fancy

4voto

apricot Punkte 3369

Farbunterschied auf Zeichenebene: Installieren Sie ccdiff

ccdiff -r /usr/share/dict/words /tmp/new-dict

Output of ccdiff

1 Stimmen

ccdiff scheint gut als Diff-Programm zu funktionieren, aber leider kann es ein bestehendes Diff (z.B. einen Patch) nicht einfärben.

2voto

Weihang Jian Punkte 6493

Mit dem Fledermaus Befehl:

diff file1 file2 | bat -l diff

1 Stimmen

Was ist Fledermaus tun sollen? Können Sie das näher erläutern? Bitte antworten Sie bis Bearbeitung (Änderung) Ihrer Antwort , nicht hier in den Kommentaren ( sans "Bearbeiten:", "Aktualisieren:" oder ähnlich - die Antwort sollte so aussehen, als wäre sie heute geschrieben worden).

0voto

naught101 Punkte 17337

In neueren Versionen von Git unter Ubuntu können Sie das diff-highlighting mit aktivieren:

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

Und dann fügen Sie dies zu Ihrem .gitconfig Datei:

[pager]
    log = diff-highlight | less
    show = diff-highlight | less
    diff = diff-highlight | less

Es ist möglich, dass sich das Skript in anderen Distributionen irgendwo anders befindet. Sie können verwenden locate diff-highlight um herauszufinden, wo.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X