417 Stimmen

Wie kann man die Git-Konsole einfärben?

Ich habe kürzlich gesehen, dass die git Konsole in Windows ist farbig, z. B. grün für Hinzufügungen, rot für Löschungen usw. Wie färbe ich meine git so eine Konsole?

Zur Installation habe ich den Befehl verwendet: $ sudo apt-get install git-core

6voto

Skiptomylu Punkte 914

In Ihrem ~/.gitconfig Datei fügen Sie einfach Folgendes hinzu:

[color]
  ui = auto

Es kümmert sich um alle Ihre Git-Befehle.

6voto

Glenn Slayden Punkte 15791

Verbesserung der Git-'branch-type'-Farben unter Windows 10:

Befehl anzeigen git branch -avv für alle Beispiele...


1. Git Standard-Farbschema:

git config --system --remove-section color.branch

enter image description here


2. Zweigfarben, die in einer anderen Antwort auf dieser Seite:

git config --system color.branch.local    "yellow"
git config --system color.branch.current  "yellow reverse"
git config --system color.branch.remote   "green"

enter image description here


3. Möglicherweise verbessertes Farbschema der Zweige:

git config --system color.branch.local    "yellow"
git config --system color.branch.current  "brightwhite yellow"
git config --system color.branch.remote   "normal green"
git config --system color.branch.upstream "brightwhite cyan"

enter image description here


4. Mach dein eigenes:

Geben Sie die Vordergrundfarbe sowie eine (optionale) Hintergrundfarbe an. Der Satz von Farben, die in Windows 10 eine Wirkung haben, wird entsprechend dem folgenden regulären Ausdruck angegeben (ja, Sie können brightblack und es ist tatsächlich recht nützlich):

(normal|(bright)?(black|red|green|yellow|blue|magenta|cyan|white))

Soweit ich das beurteilen kann, ist die dim (siehe Doku-Link unten) bewirkt nichts in der Windows 10-Konsole, und die Option bold hat die gleiche Wirkung wie die Option bright* Farbe. Erinnern Sie sich nun an die in den Beispielen gezeigte Syntax der Konfiguration:

git config <config-type> color.branch.<slot>  "<fg> <bg>"

Der Parameter <config-type> ist typischerweise --system o --global . Wenn diese Option nicht angegeben wird, wird die angegebene Farbe nur auf das aktuelle Repository angewendet. Mit den soeben beschriebenen Farbnamen können Sie den Vordergrund <fg> und Hintergrund <bg> Farben für bestimmte Zweigarten, wobei <slot> ist eine der folgenden Möglichkeiten:

  • current (der aktuelle Zweig)
  • local (eine lokale Niederlassung)
  • remote (ein Zweig zur Fernüberwachung in refs/remotes/)
  • upstream (vorgelagerter Verfolgungszweig)
  • plain

Wie immer können Sie sich Ihre gesamte Git-Konfiguration mit allen Optionen, die Sie wie hier beschrieben eingestellt haben, mit dem folgenden Befehl anzeigen lassen:

git config -l --show-origin

Beachten Sie, dass es auch eine Reihe weiterer Konfigurationsoptionen gibt, die sich auf die Farben der Protokollausgabe beziehen (hier nicht behandelt):

git config --system color.decorate.(branch|remoteBranch|tag|stash|HEAD|grafted) <color>

Hinweis: https://git-scm.com/docs/git-config

5voto

atupal Punkte 15076

Eine andere Möglichkeit ist die Bearbeitung der .gitconfig (erstellen, falls nicht vorhanden), zum Beispiel:

vim ~/.gitconfig

und dann hinzufügen:

[color]
  diff = auto
  status = auto
  branch = auto

4voto

Deepak Dixit Punkte 1352

GIT verwendet standardmäßig eine farbige Ausgabe, aber auf einigen Systemen wie CentOS ist sie nicht aktiviert. Sie können sie wie folgt aktivieren

git config --global color.ui  true 
git config --global color.ui  false 
git config --global color.ui  auto 

Hier können Sie den gewünschten Befehl auswählen.

Hier --global ist optional, um die Aktion für jedes Repository in Ihrem System anzuwenden. Wenn Sie die Färbung nur für das aktuelle Repository anwenden wollen, können Sie wie folgt vorgehen

 git config color.ui  true

3voto

Carson Punkte 3411

Wenn Sie mit der Standardeinstellung nicht zufrieden sind, können Sie ANSI-Escape-Code um Ihnen zu helfen, die Farbe einzustellen, und wenn Sie einen Text ändern wollen, können Sie die Bash schreiben, um Ihnen zu helfen. siehe unten:

Eaxmplae

# .gitconfig

[alias]
    st-color = "!f() { \
        echo -n -e '\\033[38;2;255;0;01m\\033[4m' ;\
        git status -s | grep ' D' | \
        sed -e 's/^ ./DELETE:/' ; \
        echo -n -e '\\033[m' ;\
        \
        echo -n -e '\\033[48;2;128;128;128m' ;\
        echo -n -e '\\033[38;2;0;255;01m' ;\
        git status -s | grep ' [AM]' | \
        sed -e 's/^ ./NEW OR MODIFY:/' ; \
        echo -n -e '\\033[m' ;\
        \
        echo -n -e '\\033[38;2;255;0;255m' ;\
        echo Rename ;\
        git status -s | grep 'R ' | \
        sed -e 's/^..//' ; \
        echo -n -e '\\033[m' ;\
    }; f"

demo

enter image description here

Erläuterung

  1. können Sie das lange Skript auf .gitconfig verwenden Sie die nachstehende Syntax:

    [alias]
        your-cmd = !f() { \
            \
        }; f"
  2. echo -n -e (mehr sehen echo )

    • -n = Keinen abschließenden Zeilenumbruch ausgeben.
    • -e Aktiviert die Interpretation der folgenden Backslash-escaped
  3. \\033[38;2;255;0;0m\\033[4m (mehr sehen SGR-Parameter )

    • \\033[38;2;255;0;0m : 38 Mittelwert vor Farbe. 255;0;0 = Rot | r;g;b
    • \\033[4m : Unterstrich
  4. grep : Der Befehl grep dient der Textsuche.

  5. sed -e 's/be_replace_string/new_string/' String durch einen neuen String ersetzen.

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