2013-02-26 10 views
8

Ich habe die offizielle Windows-Git-Distribution installiert, und ich installierte eine neue Mingw, und in das Minz-Terminal. Dann habe ich meine Git-Installation auf diese Installation kopiert, und jetzt funktioniert es von Pfefferminz. Mein einziges Problem ist, dass die git-Ausgabe nicht farbig ist. Ich vermute, dass dies daran liegt, dass der Windows-Git-Port versucht, das Windows-Konsolen-Farb-Theme zu verwenden und nicht die ANSI-Farbcodes, die Minty interpretieren könnte. Ist es möglich, dass git stattdessen die ANSI-Farbcodes verwendet?Wie bekomme ich farbige Ausgabe mit git + mintty + mingw auf Windows?

(Ich habe vorher ein Cygwin-Setup versucht, aber die Leistung war sehr, sehr schlecht, und ich konnte keine Lösung dafür finden).

+1

Aus meiner Erfahrung sind Cygwin und Mingw in Bezug auf die Leistung in etwa gleich schlecht. Insbesondere hilft eine saubere 'PATH'-Variable sehr. – Rufflewind

Antwort

9

von git-config:

Wenn dies immer gesetzt ist, git-diff (1), git-log (1), und git-Show (1) Farbe für alle Patches verwenden . Wenn es auf true oder auto eingestellt ist, verwenden diese Befehle nur Farbe, wenn die Ausgabe an das Terminal erfolgt. Der Standardwert ist false.

Es sieht aus wie git ist nicht behandeln minty als Terminal. Für mich immer statt true/Auto mit hilft:

[color] 
    status = always 

Farbe Erzwingen durch Zugabe von --color Flag diff Befehl Arbeit als auch (mit diff = true):

git diff --color 
+0

In der Tat scheint es, als ob "immer" das Problem löst. Ich hatte ein funktionierendes Farbsetup mit der Shell, die mit msysgit geliefert wurde (das ist eine Standard-Windows-Shell, auf der 'sh.exe --login -i' läuft). Das Setzen von 'always' anstelle von true in meiner Datei' ~/.gitconfig' behebt das Problem der fehlenden Farbe mit 'mintty'. Danke – Matt

+3

Das funktioniert nicht ganz, zum Beispiel 'git branch'. Ich musste auch Zweig, Diff und interaktiv zu "immer" zusätzlich zum Status setzen. –

0

Es ist einfach. Config git, um immer Farbe in jedem ui anzuzeigen.

git config --global color.ui always 

Funktioniert für mich.

Verwandte Themen