2013-08-24 16 views
46

Po uruchomieniu "git status" w repozytorium kolory dla zmian i nieśledzone pliki są ciemnoczerwone, gdy próbowałem skonfigurować je jako "normalne" "czerwony. Chcę to zrobić, ponieważ mam konsolę z ciemnym tłem, więc ciemnoczerwony jest trudny do odczytania.Zmienianie kolorów wyjściowych "git status" w Posh-Git

Szukałem wokół, i nie wydają się być dwie zmiany konfiguracyjne, które musiałem zrobić:

  1. zmiana "WorkingForegroundColor" i "UntrackedForegroundColor" z "darkred" na "Red" w $ GitPromptSettings.

  2. Zmień "color.status.changed" i "color.status.untracked" na czerwony w git config.

Z tego, co przeczytałem, to wszystko, co powinienem zrobić, a jednak wyniki "statusu git" pozostają ciemnoczerwone.

Oto podsumowanie, aby udowodnić, ustawić je jak twierdził, a może ktoś może dostrzec błąd:

screenshot

+0

Jak to zrobiłeś 2)? – manojlds

+0

co to jest edytor? – ridermansb

+0

Pytanie brzmi, w jaki sposób ten motyw z tymi kolorami? – ridermansb

Odpowiedz

36

Jest tylko jeden sposób, aby zmienić darkred do Red tutaj: zmienić kolorystykę samo okno konsoli. O ile wiem, git wybierze "pierwszy" czerwony na liście (to jest ciemne ...). Więc po prostu zwiększ wartość R dla niego.

Możesz to zrobić bezpośrednio w oknie (Właściwości -> Kolory) lub w rejestrze. Monit to inna historia: używa nazw kolorów PS, gdzie Czerwony = Czerwony, a nie DarkRed ...

+3

To jest świetne. Nie miałem pojęcia, że ​​zestaw kolorów we właściwościach jest paletą kolorów, z której wszystko będzie czerpać. –

+1

Nie będę kłamać, byłam dość sceptycznie nastawiona do zmiany Czerwonej z okna właściwości ... ale, całkowicie trafna. Świetna odpowiedź =) – afreeland

+0

Działa świetnie! Działa również dla Powershell, jeśli używasz standardowej konsoli (nie ISE). Działa to zarówno dla statusu git, jak i posh-gita. Właśnie poszedłem do Właściwości -> Kolory, kliknąłem na ciemnoczerwony i zmieniłem jego wartość Czerwoną na 255. Działa teraz fantastycznie. Wielkie dzięki! – Tolga

4

Możesz to zmienić, modyfikując źródło pliku GitPrompt.ps1 w folderze modułu modułu PowerShell. Miałem ten sam problem i po prostu usunął „ciemna” w kolorach zdefiniowanych wokół linii 30 w tym pliku:

BeforeIndexForegroundColor= [ConsoleColor]::**Green** 
BeforeIndexBackgroundColor= $Host.UI.RawUI.BackgroundColor 

IndexForegroundColor  = [ConsoleColor]::**Green** 
IndexBackgroundColor  = $Host.UI.RawUI.BackgroundColor 

WorkingForegroundColor = [ConsoleColor]::**Red** 
WorkingBackgroundColor = $Host.UI.RawUI.BackgroundColor 

UntrackedText    = ' !' 
UntrackedForegroundColor = [ConsoleColor]::**Red** 

Ta lista Powershell colors jest również przydatna.

+2

To działało na zmianę kolorów w wierszu polecenia, który pokazuje skrócony status (przykład: [master +1 ~ 0 -0 | +2 ~ 0 ~ 0]). Nie zmieniło to jednak kolorów wyjściowych za pomocą polecenia "git status". Sugestia BartekB też się nie zmieniła. –

+0

pracował dla mnie w obu lokalizacjach, ale dopiero po otrzymaniu najnowszej wersji posh-gita – ckapilla

8

Aby zmienić kolor wymienionych plików nieśledzonej i zmodyfikowanych do bardziej czytelnego żółty kolor, można dodać to do pliku ~/.gitconfig:

także aktualizowanie Ci GitPrompt.ps1 pokazać untracked jako żółty jest wtedy dobrym pomysłem:

UntrackedForegroundColor = [ConsoleColor]::Yellow 
    WorkingForegroundColor = [ConsoleColor]::Yellow 

Edit: GitPrompt.ps1 znajduje się w folderze posh-git PowerShell.

72

Dane wyjściowe git status są kontrolowane przez plik .gitconfig. Domyślne wartości dla plików changed i untracked są ciemne Red, ale prawdopodobnie chcesz mieć Red Bold, która jest jasną (domyślną) czerwoną czcionką w linii poleceń.

Dodaj następujące elementy do swojego.Plik gitconfig:

[color] 
    ui = true 
[color "status"] 
    changed = red bold 
    untracked = red bold 
    added = green bold 

dla nikogo innego przedstawieniu to w przyszłości, zaakceptowanych kolory są normal, black, red, green, yellow, blue, magenta, cyan i white także jeden opcjonalny modyfikator bold, dim , ul, blink lub . Jeśli podane są dwa kolory, pierwszy jest pierwszym planem, a drugi jest tłem.

+1

Dziękuję - moje życie jest już gotowe! Uwaga dla każdego, kto może mieć problemy z uruchomieniem tej funkcji, nie działał dla mnie, dopóki nie zainstalowałem nowszej wersji posh-gita. – ckapilla

+2

Działa to w przypadku każdej wersji git w oknach, a nie tylko po prostu git. –

+1

Działa to nawet w trybie powershell. +1 za mój wzrost produktywności. –

0

Oprócz odpowiedzi @WarrenB. Aby zmienić kolor statusu i kolor git diff (nowych linii i usuniętymi liniami) trzeba mieć to w pliku .git/config:

[color] 
ui = true 
[color "status"] 
changed = red bold 
untracked = red bold 
added = green bold 
[color "diff"] 
old = red bold 
new = green bold 

Opcja „diff” pozwala jasne (odważne) kolory czerwony i zielony. Numer referencyjny: https://git-scm.com/docs/git-config#git-config-colordiff

Powiązane problemy