我最近看到Windows中的git控制台是有颜色的,例如,绿色表示添加,红色表示删除等等。我怎么给git控制台上色呢?
要安装它,我使用命令:$ sudo apt-get install git-core
我最近看到Windows中的git控制台是有颜色的,例如,绿色表示添加,红色表示删除等等。我怎么给git控制台上色呢?
要安装它,我使用命令:$ sudo apt-get install git-core
当前回答
改进win10上Git“branch-type”的颜色:在所有示例中显示命令Git branch -avv
1. Git默认配色方案:
git config --system --remove-section color.branch
2. 在本页的另一个答案中给出的分支颜色:
git config --system color.branch.local "yellow" git config --system color.branch.current "yellow reverse" git config --system color.branch.remote "green"
3.可能改进的分支配色方案:
git config --system color.branch.local "yellow" git config --system color.branch.current "brightwhite yellow" git config --system color.branch.remote "normal green" git config --system color.branch.upstream "brightwhite cyan"
4. 自己制作:
指定前景色和(可选的)背景色。在Windows 10中起作用的颜色集根据下面的正则表达式给出(是的,你可以使用brightblack,它实际上非常有用):
(normal|(bright)?(black|red|green|yellow|blue|magenta|cyan|white))
据我所知,在Windows 10控制台上,暗淡选项(见底部的文档链接)没有任何作用,而粗体选项与明亮*颜色具有相同的效果。现在回想一下示例中显示的配置语法:
git config <config-type> color.branch.<slot> "<fg> <bg>"
参数<config-type>通常是——system或——global。如果省略,指定的颜色将只应用于当前的repo。使用刚才详细介绍的颜色名称,您可以为特定的分支类型设置前景色<fg>和背景<bg>颜色,其中<slot>是以下之一:
电流(当前支路) 本地(本地分支机构) Remote (refs/remotes/中的远程跟踪分支) 上游(上游跟踪分支) 平原
像往常一样,你可以通过以下命令显示你的整个git配置,其中将包括你在这里设置的任何选项:
git config -l --show-origin
注意还有一组与日志输出颜色相关的配置选项(这里不讨论):
git config --system color.decorate.(branch|remoteBranch|tag|stash|HEAD|grafted) <color>
参考:https://git-scm.com/docs/git-config
其他回答
如果您要求,Git会自动为大部分输出上色。你可以非常具体地说明你想要什么颜色以及如何着色;但是要打开所有默认的终端颜色,请设置颜色。UI为true:
git config --global color.ui true
添加到你的.gitconfig文件下一个代码:
[color]
ui = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color "status"]
added = yellow
changed = green
untracked = cyan
好吧,如果你对默认设置不满意,你可以使用ANSI转义代码来帮助你设置颜色,如果你想修改一些文本,你可以编写bash来帮助你。如下所示:
埃克斯姆普雷
# .gitconfig
[alias]
st-color = "!f() { \
echo -n -e '\\033[38;2;255;0;01m\\033[4m' ;\
git status -s | grep ' D' | \
sed -e 's/^ ./DELETE:/' ; \
echo -n -e '\\033[m' ;\
\
echo -n -e '\\033[48;2;128;128;128m' ;\
echo -n -e '\\033[38;2;0;255;01m' ;\
git status -s | grep ' [AM]' | \
sed -e 's/^ ./NEW OR MODIFY:/' ; \
echo -n -e '\\033[m' ;\
\
echo -n -e '\\033[38;2;255;0;255m' ;\
echo Rename ;\
git status -s | grep 'R ' | \
sed -e 's/^..//' ; \
echo -n -e '\\033[m' ;\
}; f"
demo
解释
you can write the long script on .gitconfig use the syntax as below: [alias] your-cmd = !f() { \ \ }; f" echo -n -e (see more echo) -n = Do not output a trailing newline. -e Enable interpretation of the following backslash-escaped \\033[38;2;255;0;0m\\033[4m (see more SGR parameters) \\033[38;2;255;0;0m : 38 mean fore color. 255;0;0 = Red | r;g;b \\033[4m : underline grep : The grep command is used to search text. sed -e 's/be_replace_string/new_string/' replace string to new string.
在Ubuntu或任何其他平台(是的,Windows也是!);从2013年8月23日发布的git1.8.4开始,你不需要做任何事情:
许多教程教用户设置“颜色”。将“user.name/email”设置为“auto”后的第一件事,用于向Git介绍自己。现在该变量默认为"auto"。
所以默认情况下你会看到颜色。
GIT默认使用彩色输出,但在某些系统上,如CentOS,它是不启用的。您可以像这样启用它
git config --global color.ui true
git config --global color.ui false
git config --global color.ui auto
您可以从这里选择所需的命令。
这里——global是可选的,用于为系统中的每个存储库应用操作。如果你只想为当前存储库应用着色,那么你可以这样做-
git config color.ui true