Чтобы получить цветной вывод всех команд git, я установил следующее:
git config --global color.ui true
Тем не менее, это производит вывод, как это для git diff
,git log
в то время как команды вроде git status
отображаются нормально
Почему он не распознает экранированные цветовые коды только в некоторых командах и как я могу это исправить?
Я использую iTerm 2 (тип терминала xterm-256color
) на OS X 10.8.2 и zsh в качестве оболочки
zsh --version
zsh 5.0.0 (x86_64-apple-darwin12.0.0)
git --version
git version 1.7.9.6 (Apple Git-31.1)
less
нужно-R
отображать цвета, я забыл об этомgit log
иgit diff
передал выводless
. Спасибо :)~/.profile
во FreeBSD былоPAGER=more; export PAGER
LESS
установлен ,-K
потому что мне нравится быть в состоянииCTRL-C
все. Я подумал, что с этой переменной что-то странное, и теперь я знаю, как это исправить.Улучшение ответа Gilles , вы можете сохранить свои старые
$LESS
опции, используя это в вашем git config (например, в~/.gitconfig
):источник
LESS=-i
в моем bashrc, поэтому я должен был бы сделать `[core] pager = less $ LESS -FR` Я убрал X, потому что с X мой существующий контент терминала стирается, я предпочитаю, чтобы контент терминала оставался.Вы также можете увидеть этот вывод, если у вас есть Busybox . Alpine Linux - хороший пример популярного дистрибутива, который его использует. См. Https://wiki.alpinelinux.org/wiki/Alpine_Linux:FAQ#How_to_enable.2Ffix_colors_for_git.3F.
Простой способ узнать, используете ли вы в настоящее время Busybox, это запустить:
Или если вы используете рыбные раковины
Если вывод
/bin/busybox
, то вы можете решить вашу проблему, установив GNU меньше .На альпийском:
Команда будет отличаться в зависимости от вашего дистрибутива / менеджера пакетов.
источник