Изменение цвета вывода "git status" в Posh-Git

на Пош-ГИТ, когда я запускаю " git status "в репозитории, цвета для изменений и неотслеженных файлов темно-красные, когда я попытался настроить их на" нормальный " красный. Я хочу сделать это, потому что у меня есть консоль с темным фоном, поэтому темно-красный трудно читать.

Я искал вокруг, и, похоже, есть два изменения конфигурации, которые мне нужно было сделать:

  1. изменить "WorkingForegroundColor" и "UntrackedForegroundColor "от" DarkRed "до" Red " в $GitPromptSettings.

  2. изменить "цвет.статус.изменился " и " цвет.статус.untracked " до красного в конфигурации git.

из моего чтения, это все, что мне нужно сделать, и все же результаты "git status" остаются темно-красными.

вот резюме, чтобы доказать, что я установил их, как я утверждал, и, возможно, кто-то может обнаружить ошибку:

screenshot

5 ответов


здесь есть только один способ изменить DarkRed на красный: изменить цветовую схему самого окна консоли. Насколько я знаю, git выберет "первый" красный цвет в списке (который, оказывается, темный...). Поэтому просто увеличьте значение R для него.

вы можете сделать это непосредственно в окне (Свойства - > цвета) или в реестре. Подсказка-это другая история: она использует имена цветов PS, где Red = Red, а не DarkRed...


выход git status контролируется .файл gitconfig хранит настройки. Значение по умолчанию для changed и untracked файлы-это dim Red но вы, вероятно, хотите Red Bold который является ярким (по умолчанию) красным цветом, который у вас есть в приглашении.

добавьте следующее к вашему .файл gitconfig хранит настройки:

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

для тех, кто ссылается на это в будущем, принятые цвета являются normal, black, red, green, yellow, blue, magenta, cyan и white также один дополнительный модификатор bold, dim, ul, blink или reverse. Если заданы два цвета, первый-это передний план, а второй-фон.


чтобы изменить цвет перечисленных неотслеживаемых и измененных файлов на более читаемый желтый цвет, вы можете добавить это в свой ~/.файл gitconfig хранит настройки:

[color "status"]
    untracked = bold yellow
    changed = bold yellow

также обновление GitPrompt.ps1, чтобы показать untracked как желтый, тогда, вероятно, хорошая идея:

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

Edit: GitPrompt.ps1 находится в папке PowerShell posh-git.


вы можете изменить их, изменив источник GitPrompt.файл ps1 в папке модуля PowerShell posh-git. У меня была та же проблема и просто удалил "Темный" в цветах, определенных вокруг строки 30 в этом файле:

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**

список Powershell цвета тоже полезно.


в дополнение к ответу @WarrenB. Чтобы изменить цвет статуса и цвет git diff (новых линий и удаленных линий) вы должны иметь это в своем .файл git/config строку:

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

опция "diff" позволяет использовать яркие (жирные) красные и зеленые цвета. Ссылка: https://git-scm.com/docs/git-config#git-config-colordiff