我正在输出到终端,但 Git 没有正确检测到我正在输出到终端,以便为输出着色。我的问题是,当 git-config(1) 说“仅当输出到终端时才使用颜色”时,它的真正含义是什么(这个短语出现在多个配置描述的末尾,例如 color.ui 和 color 。分支)?换句话说,Git 如何决定它是否输出到终端,以及如何更改我的环境设置以通知 Git 我的终端确实是一个终端?
细节:
我在 Windows 上使用带有 Cygwin 的 rxvt 终端。我也安装了 MSysGit。当我进行 Git 配置设置时:
[color]
ui = auto
branch = auto
status = auto
我的终端输出中仍然没有颜色。但是,当我切换到
[color]
ui = always
branch = always
status = always
然后有正确的彩色输出。但是,为了正确处理实际的非终端情况,我需要切换回“自动”,而不是“始终”。因此,为了使“自动”正常工作:如何更改我的环境以使 Git 认识到我的 rxvt+Cygwin 是能够支持颜色的终端?
(PS。由于比这个相对较小的颜色问题更大的问题,我不能使用 Cygwin 版本的 Git。请不要回复告诉我切换到 Cygwin 版本。)
谢谢你的帮助!