Я вывожу на терминал, но Git неправильно определяет, что я вывожу на терминал, для окрашивания вывода. Мой вопрос: что на самом деле означает git-config(1), когда он говорит, что «цвета используются только тогда, когда вывод идет на терминал» (эта фраза появляется в конце нескольких описаний конфигурации, таких как для color.ui и color .ветвь)? Другими словами, как Git решает, выводит ли он данные на терминал, и как мне изменить настройки среды, чтобы сообщить Git, что мой терминал действительно является терминалом?
Особенности:
Я использую терминал rxvt с Cygwin в Windows. У меня также установлен MSysGit. Когда я делаю настройки конфигурации Git:
[color]
ui = auto
branch = auto
status = auto
в моем выводе терминала все еще нет цвета. Однако, когда я переключаюсь на
[color]
ui = always
branch = always
status = always
тогда есть правильный цветной вывод. Однако мне нужно вернуться к «авто», а не «всегда», чтобы правильно обрабатывать фактические нетерминальные случаи. Итак, чтобы заставить «авто» работать правильно: как мне изменить свою среду, чтобы Git распознал, что мой rxvt + Cygwin является терминалом, способным поддерживать цвет?
(PS. Я не могу использовать версию Git для Cygwin из-за гораздо более серьезных проблем, чем эта относительно незначительная проблема с цветом. Пожалуйста, не отвечайте, говоря мне, чтобы я переключился на версию Cygwin.)
Спасибо за вашу помощь!
TERM
? (Уточните уecho $TERM
.) - person ezod   schedule 26.08.2012