Ausgabefarben von „git status“ in Posh-Git ändern

Lesezeit: 6 Minuten

Im Posh-Git, wenn ich “git status” in einem Repository ausführe, sind die Farben für Änderungen und nicht verfolgte Dateien dunkelrot, wenn ich versucht habe, sie als “normales” Rot zu konfigurieren. Ich möchte dies tun, weil ich eine Konsole mit dunklem Hintergrund habe, sodass Dunkelrot schwer zu lesen ist.

Ich habe mich umgesehen und es scheint zwei Konfigurationsänderungen zu geben, die ich vornehmen musste:

  1. Ändern Sie “WorkingForegroundColor” und “UntrackedForegroundColor” in $GitPromptSettings von “DarkRed” in “Red”.

  2. Ändern Sie “color.status.changed” und “color.status.untracked” in der Git-Konfiguration in Rot.

Nach meiner Lektüre ist das alles, was ich tun müsste, und dennoch bleiben die Ergebnisse von “git status” dunkelrot.

Hier ist eine Zusammenfassung, um zu beweisen, dass ich sie so eingestellt habe, wie ich es behauptet habe, und vielleicht kann jemand den Fehler erkennen:

Bildschirmfoto

  • Die Frage ist, wie kam dieses Thema mit diesen Farben zustande?

    – ridermansb

    1. August 2014 um 17:21 Uhr

Die Ausgabe von git status wird von Ihrer .gitconfig-Datei gesteuert. Die Voreinstellung für changed und untracked Dateien ist ein schwaches Red aber du willst wahrscheinlich Red Bold Dies ist das helle (Standard-) Rot, das Sie in der Eingabeaufforderung haben.

Fügen Sie Ihrer .gitconfig-Datei Folgendes hinzu:

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

Für alle anderen, die sich in Zukunft darauf beziehen, sind die akzeptierten Farben normal, black, red, green, yellow, blue, magenta, cyanund white sowie ein einzelner optionaler Modifikator bold, dim, ul, blinkoder reverse. Wenn zwei Farben angegeben sind, ist die erste der Vordergrund und die zweite der Hintergrund.

  • Danke – mein Leben ist jetzt vollständig! Ein Hinweis für alle, die Probleme haben, dies zum Laufen zu bringen, es hat bei mir nicht funktioniert, bis ich eine neuere Version von posh-git installiert habe.

    – Ckapilla

    24. April 2016 um 21:55 Uhr

  • Dies funktioniert für jede Version von Git unter Windows, nicht nur für schickes Git.

    – Michael Landes

    28. April 2016 um 4:19 Uhr

  • Dies funktioniert sogar auf Powershell. +1 für meinen Produktivitätsschub.

    – OK klicken

    6. November 2016 um 1:50 Uhr

  • Habe das Muster verwendet git config <color-to-update> “foreground-color background-color attribute” wie git config --global color.status.changed "cyan normal bold"

    – Matthew McDermott

    7. September 2018 um 15:17 Uhr

  • Was ist ui=true? Prüfen hierAbschnittsfarben.

    –Timo

    25. Oktober 2020 um 13:38 Uhr


Es gibt hier nur eine Möglichkeit, DarkRed in Rot zu ändern: Ändern Sie das Farbschema des Konsolenfensters selbst. Soweit ich weiß, wird Git “erstes” Rot auf der Liste auswählen (das zufällig dunkel ist …). Erhöhen Sie also einfach den R-Wert dafür.

Sie können dies direkt im Fenster (Eigenschaften -> Farben) oder in der Registrierung tun. Prompt ist eine andere Geschichte: Es verwendet PS-Farbnamen, wobei Red = Red, nicht DarkRed …

  • Das ist toll. Ich hatte keine Ahnung, dass der Farbsatz in Eigenschaften eine Farbpalette ist, aus der alles schöpfen würde.

    – Ben Wilde

    14. Oktober 2015 um 16:10 Uhr

  • Ich werde nicht lügen, ich war ziemlich skeptisch, das Rot im Eigenschaftenfenster zu ändern … aber völlig richtig. Tolle Antwort =)

    – ein Freiland

    22. September 2016 um 19:30 Uhr

  • Funktioniert super! Funktioniert auch für Powershell, wenn Sie die Standardkonsole (nicht ISE) verwenden. Und es funktioniert sowohl für den Git-Status als auch für den Posh-Git. Ich ging einfach zu Eigenschaften -> Farben, klickte auf das dunkle Rot und ändere seinen Rotwert auf 255. Funktioniert jetzt fantastisch. Danke vielmals!

    – Tolga

    20. März 2017 um 20:43 Uhr


  • Tolle Hilfe. Ich habe mich so über die rote Statusinfo geärgert. Habe versucht, es zu ändern, aber es funktioniert nicht. Einfach den roten Wert auf 15 zu setzen funktioniert super für mich.

    – Charala

    3. Februar 2018 um 22:13 Uhr

  • Powershell ausführen. War sehr hilfreich. Vielen Dank.

    – jdawiz

    30. Januar 2019 um 17:52 Uhr

Benutzer-Avatar
Thomas Swensen

Um die Farbe der aufgelisteten nicht nachverfolgten und geänderten Dateien in die besser lesbare gelbe Farbe zu ändern, können Sie dies zu Ihrer ~/.gitconfig-Datei hinzufügen:

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

Dann ist es wahrscheinlich eine gute Idee, GitPrompt.ps1 so zu aktualisieren, dass es nicht verfolgt als gelb angezeigt wird:

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

Bearbeiten: GitPrompt.ps1 befindet sich im PowerShell-Posh-Git-Ordner.

  • Dies ist eine großartige Antwort mit weitaus weniger Komplexität und Drittanbieter-Sachen. Es ist definitiv +1. Allerdings würde ich dort gerne noch zwei Dinge sehen. Die erste ist ein Verweis auf und eine vollständige Auflistung anderer Eigenschaften, die im Begriff einer Farbe einstellbar sind (falls vorhanden). Zweitens ist ein Vorschlag, wie man eine beliebige Farbe einstellen kann (vorzugsweise ein Hexa-Wert, aber eine Liste verfügbarer Farbziffern ist auch großartig). Der zweite ist natürlich wenn es ist möglich (und meiner Erfahrung nach ist es ein ziemlich großer “wenn“.)

    – Konrad Viltersten

    7. August 2021 um 8:25 Uhr

Zusätzlich zur Antwort von @WarrenB. Zum Ändern der Statusfarbe und die Farbe des Git-Diffs (von neuen Zeilen und entfernten Zeilen) müssen Sie in Ihrer .git/config-Datei haben:

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

Die “Diff”-Option ermöglicht Ihnen die leuchtenden (fetten) roten und grünen Farben. Bezug: https://git-scm.com/docs/git-config#git-config-colordiff

Sie können diese ändern, indem Sie die Quelle der Datei „GitPrompt.ps1“ im PowerShell-Ordner „posh-git“ ändern. Ich hatte das gleiche Problem und habe gerade das ‘Dunkel’ in den Farben entfernt, die um Zeile 30 in dieser Datei definiert sind:

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

Diese Liste von Powershell-Farben ist auch nützlich.

  • Dies funktionierte zum Ändern der Farben an der Eingabeaufforderung, die den abgekürzten Status anzeigt (Beispiel: [master +1 ~0 -0 | +2 ~0 ~0]). Die vom Befehl “git status” ausgegebenen Farben wurden jedoch nicht geändert. Auch der Vorschlag von BartekB änderte sich nicht.

    – John Pankowicz

    26. November 2013 um 16:18 Uhr

  • hat an beiden Orten für mich funktioniert, aber erst nachdem ich die neueste Version von posh-git erhalten hatte

    – Ckapilla

    24. April 2016 um 21:55 Uhr

  • funktionierte gut für mich mit Powershell und nur Standard-Git von Git Bash (was ist sowieso Posh, lol)

    – Stephan Champagner

    28. April 2020 um 13:45 Uhr


  • Dies funktionierte zum Ändern der Farben an der Eingabeaufforderung, die den abgekürzten Status anzeigt (Beispiel: [master +1 ~0 -0 | +2 ~0 ~0]). Die vom Befehl “git status” ausgegebenen Farben wurden jedoch nicht geändert. Auch der Vorschlag von BartekB änderte sich nicht.

    – John Pankowicz

    26. November 2013 um 16:18 Uhr

  • hat an beiden Orten für mich funktioniert, aber erst nachdem ich die neueste Version von posh-git erhalten hatte

    – Ckapilla

    24. April 2016 um 21:55 Uhr

  • funktionierte gut für mich mit Powershell und nur Standard-Git von Git Bash (was ist sowieso Posh, lol)

    – Stephan Champagner

    28. April 2020 um 13:45 Uhr


1312530cookie-checkAusgabefarben von „git status“ in Posh-Git ändern

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy