Para obter uma saída colorida de todos os comandos git, defino o seguinte:
git config --global color.ui true
No entanto, isso produz uma saída como essa para git diff
,git log
enquanto comandos como git status
exibir bem
Por que ele não reconhece os códigos de cores de escape em apenas alguns dos comandos e como posso corrigi-lo?
Estou usando o iTerm 2 (tipo de terminal xterm-256color
) no OS X 10.8.2 e zsh como meu shell
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
precisava-R
exibir cores, esqueci issogit log
egit diff
canalizei a saída paraless
. Obrigado :)~/.profile
no FreeBSD tinhaPAGER=more; export PAGER
LESS
definido-K
porque eu gosto de ser capaz deCTRL-C
tudo. Eu pensei que era algo estranho com essa variável, e agora eu sei como consertá-la.Melhorando a resposta do Gilles , você pode manter suas
$LESS
opções antigas usando isso na sua configuração do git (por exemplo, em~/.gitconfig
):fonte
LESS=-i
no meu bashrc, então eu teria que fazer `[core] pager = less $ LESS -FR` Eu tirei o X, porque com X, meu conteúdo do terminal existente é apagado, eu prefiro que o conteúdo do terminal permaneça.Você também pode ver esta saída se tiver o Busybox . O Alpine Linux é um bom exemplo de uma distribuição popular que a utiliza. Consulte https://wiki.alpinelinux.org/wiki/Alpine_Linux:FAQ#How_to_enable.2Ffix_colors_for_git.3F
Uma maneira simples de saber se você atualmente usa o Busybox é executar:
Ou se você usa casca de peixe
Se a saída for
/bin/busybox
, então você pode resolver seu problema instalando menos o gnu .No Alpine:
O comando será diferente dependendo da sua distribuição / gerenciador de pacotes.
fonte