为什么在iTerm2中无法显示git的颜色?

33

我的gitconfig设置了颜色,在终端里面看起来很好,效果不错。

但是在iTerm2中,除非我为git设置反转属性,否则gitconfig的颜色根本不会出现。但是,谁喜欢颜色反转呢?

为什么会出现这种情况,我该如何解决呢?

4个回答

51

您应该检查iTerm是否正确设置了TERM变量。在我的系统上,我看到:

echo $TERM
xterm-256color

并且在Git中具有工作颜色。这是根据iTerm首选项中的“报告终端类型”属性设置的。

这是iTerm 2首选项的屏幕截图

您还应该检查“颜色”选项卡,并确保对比度滑块没有全部向右移动。


1
奇怪,我已经尝试过了。我仍然能够从git log输出中看到转义代码:ESC[33mcommit e56f9a33b767f551568ESC[m $ echo $TERM xterm-256color - Public Profile
3
我猜你现在已经弄明白了 :) 但是如果其他人面临同样的问题并且以上内容无法帮助到他们:你的问题可能与分页器(less)有关,而不是与git有关。在Unix&Linux StackExchange上有一个解决方案 - Eric Hansander
8
+1 表示赞同,"你还应该检查一下颜色选项卡,并确保对比度滑块没有全部移到最右边。" - Nick Woodhams

37
在我的情况下,在iTerm中,我可以从其他终端应用程序获得彩色输出,但没有从git获得。 对于仍在寻找解决方法的任何人,能够解决我的问题的方法是来自http://buildamodule.com/forum/post/iterm-git-ui-colors的解决方案。
按以下方式修改你的全局git配置:

git config --global color.ui true


我的iTerm变得非常好看。 :) - Sakares
1
奇怪的是,git log --color 可以工作,但对于 color "diff",我需要额外的东西。 - user707650
这让我重新同意 Xcode 许可协议,使其正常工作。我猜更新导致了一些问题,直到重新同意协议才能解决。 - Scott

3

2

对我来说这不是一个git的问题,而是macOS上iTerm2的问题。我最终解决了这个问题,方法是前往iTerm2首选项 > 窗口 > 勾选“保持背景颜色不透明”复选框,现在不应该再有痛苦或悲伤了!#RevDev

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接