2013-02-26 9 views
8

Zainstalowałem oficjalną dystrybucję systemu windows git, a ja zainstalowałem najnowszą wersję mingw i do tego terminalu mennicy. Następnie skopiowałem moją instalację git do tej instalacji mingw, a teraz działa ona z poziomu mennicy. Jedynym moim problemem jest to, że wyjście git nie jest kolorowe. Podejrzewam, że dzieje się tak dlatego, że port git Windows próbuje użyć kolorystycznej konsoli Windows, a nie kodów kolorów ANSI, które miętówka byłaby w stanie zinterpretować. Czy jest możliwe, aby Git używał zamiast tego kodów kolorów ANSI?Jak uzyskać kolorowe wydruki za pomocą git + menty + mingw w oknach?

(Próbowałem konfiguracji cygwin przed tym, ale wydajność była bardzo, bardzo zła, i nie mogłem znaleźć żadnego rozwiązania).

+1

Z mojego doświadczenia wynika, że ​​Cygwin i Mingw są równie źle pod względem wydajności. W szczególności, posiadanie czystej zmiennej "PATH" bardzo pomaga. – Rufflewind

Odpowiedz

9

z git-config:

Jeśli jest ustawiony na zawsze, git-diff (1), git-log (1) i git-show (1) użyje koloru dla wszystkich łatek . Jeśli jest ustawione na true lub auto, te polecenia będą używać koloru tylko wtedy, gdy wyjście jest do terminala. Domyślnie false.

Wygląda na to git nie traktować mintty jako terminal. Dla mnie używając zawsze zamiast prawdziwej/Auto pomaga:

[color] 
    status = always 

Zmuszanie kolor dodając --color flagę diff pracy poleceń, jak również (z diff = true):

git diff --color 
+0

Rzeczywiście wydaje się, że wpisanie "zawsze" rozwiązuje problem. Miałem działającą konfigurację kolorów z powłoką dostarczaną z msysgit (która jest standardową powłoką Windows z uruchomionym 'sh.exe - login -i'). Umieszczenie 'always' zamiast prawdziwego w moim pliku' ~/.gitconfig' naprawia problem braku koloru 'miętówki'. Dziękuję – Matt

+3

To nie działa całkowicie, na przykład 'git branch'. Musiałem również ustawić branch, diff i interactive na "zawsze" oprócz statusu. –

0

To proste. Config git, aby zawsze wyświetlać kolor w dowolnym interfejsie użytkownika.

git config --global color.ui always 

Działa dla mnie.

Powiązane problemy