在Posh-Git中,当我在存储库中运行“git status”时,当我尝试将它们配置为“正常”红色时,更改和未跟踪文件的颜色为深红色。我想这样做是因为我有一个深色背景的控制台,所以深红色难以阅读。
我四处搜索,似乎需要进行两项配置更改:
在$ GitPromptSettings中将“WorkingForegroundColor”和“UntrackedForegroundColor”从“DarkRed”更改为“Red”。
在git config中将“color.status.changed”和“color.status.untracked”更改为红色。
从我的阅读中,这就是我应该做的所有事情,但“git status”的结果仍然是暗红色。
这是一个总结,以证明我按照我声称设置它们,也许有人可以发现错误:
答案 0 :(得分:94)
git status
的输出由.gitconfig文件控制。 changed
和untracked
文件的默认值为昏暗Red
,但您可能需要Red Bold
,这是提示中的明亮(默认)红色。
将以下内容添加到.gitconfig文件中:
[color]
ui = true
[color "status"]
changed = red bold
untracked = red bold
added = green bold
对于将来引用此内容的其他人,可接受的颜色为normal
,black
,red
,green
,yellow
,{{1} },blue
,magenta
和cyan
以及单个可选修饰符white
,bold
,dim
,ul
,或blink
。如果给出两种颜色,则第一种是前景,第二种是背景。
答案 1 :(得分:49)
这里只有一种方法可以将DarkRed更改为Red:修改控制台窗口本身的颜色方案。据我所知,git将在列表中选择“第一”红色(恰好是黑暗......)。所以只需增加它的R值。
您可以直接在窗口(属性 - >颜色)或注册表中执行此操作。提示是不同的故事:它使用PS颜色名称,其中红色=红色,而不是DarkRed ......
答案 2 :(得分:11)
要将列出的未跟踪和修改过的文件的颜色更改为更易读的黄色,可以将其添加到〜/ .gitconfig文件中:
[color "status"]
untracked = bold yellow
changed = bold yellow
同时更新GitPrompt.ps1以显示未跟踪为黄色可能是一个好主意:
UntrackedForegroundColor = [ConsoleColor]::Yellow
WorkingForegroundColor = [ConsoleColor]::Yellow
编辑:在PowerShell posh-git文件夹中找到GitPrompt.ps1。
答案 3 :(得分:5)
您可以通过修改PowerShell posh-git模块文件夹中的GitPrompt.ps1文件的来源来更改这些。我有同样的问题,只是删除了此文件中第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 colors列表也很有用。
答案 4 :(得分:2)
除了@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