HOWTO · Git
为 Git 控制台着色
为 Git 控制台着色的不同方法。
本页内容
本文将讨论我们如何配置我们的 Git 终端以具有彩色输出。我们可以根据自己的喜好自定义终端,以便于使用。
我们将使用 git config 命令来设置颜色值。让我们开始吧。
Git color.ui
Git color.ui 是指处理 Git 颜色时的主变量。要在我们的 Git 终端中禁用颜色,我们必须将其设置为 false,如下所示。
$ git config --global color.ui false
一个新的 Git 终端将变量设置为 auto。这为直接终端输出流提供了颜色,并省略了管道输出到另一个进程或定向到文件的颜色代码。
我们可以将其设置为 always 以包括上述豁免;但是,当接收管道不期望有彩色输入时,我们可能会遇到问题。
$ git config --global color.ui always
Git 颜色值
除了 color.ui,Git 还支持其他粒度颜色配置,可以设置为 always、auto 和 false。这些设置具有指定的颜色值。
Git 支持正常、黑色、红色、绿色、黄色、蓝色、洋红色、青色和白色等颜色值。
如果我们的终端支持,我们可以使用像 #ff0000 这样的十六进制颜色代码来指定颜色。
Git 颜色配置
1. color.branch
我们使用这个命令来配置 git branch 命令的输出颜色。我们可以在以下上下文中使用它。
$ git config --global color.branch <slot>
<slot> 可以是以下任何一种。
current:这是指当前分支。local:指我们仓库中的本地分支。remote:指ref/remotes中的远程分支引用。upstream:指上游跟踪 Git 分支。plain:任何其他ref。
2. color.diff
我们使用这个命令来配置 git diff、git log 和 git show 命令的输出颜色。我们可以使用它,如下所示。
$ git config --global color.diff <slot>
<slot> 可以是以下任何一种。
context:这是指显示在diff或补丁中以显示更改的文本内容行。plain:这是context的同义词。meta:指git diff上的元信息。frag:指向大块头或大块头中存在的函数。old:指向diff中已删除的代码行。new:指向diff中添加的代码行。commit:指diff中的提交标头。whitespace:为git diff中的空白错误设置颜色。
3. 颜色.状态
此布尔值配置或禁用 git status 命令的颜色编码输出。我们可以在下面的上下文中使用它。
$ git config --global color.status <slot>
<slot> 可以是以下任何一种。
header:指向状态显示的标题内容。添加或更新:两者都针对任何已添加但未提交的文件。changed:这指向未添加到索引中的已修改文件。branch:指向当前分支。untracked:指向所有未跟踪的文件。unmerged:指向具有未合并更改的文件。
4. color.grep
该命令会将颜色应用于我们的 git grep 输出。我们可以在下面的上下文中使用它。
$ git config --global color.grep <slot>
<slot> 可以是以下任何一种。
context:指向上下文行中不匹配的文本。filename:指向文件名前缀。function:指向函数名称行。linenumber:指向行号前缀。match:指匹配文本。