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:指匹配文字。