Seu pager parece estar configurado para renderizar o caractere Esc (usado em seqüências de escape para alterar a cor do texto) como ESC ao invés de passá-lo diretamente para o terminal (independente do emulador de terminal, no seu caso xterm ).
Tente definir ( sh syntax).
PAGER=less LESS=R
export PAGER LESS
Ou ( (t)csh syntax):
setenv PAGER less
setenv LESS R
Para selecionar o GNU less como seu pager e informe less para passar as sequências de escape de formatação de texto. Se você não definir a variável LESS , git a definirá como FRX (portanto, inclui R , mas também F e X , que você pode querer também). Portanto, talvez você queira omitir essa parte se preferir o comportamento FRX (consulte a página less man para obter detalhes) ou unset LESS se tiver definido para um valor diferente ou defina você mesmo como FRX .
Essa variável de ambiente PAGER é usada por alguns itens (como man ) ao lado de git . Se você quiser alterar seu pager apenas para git , poderá definir a variável de ambiente GIT_PAGER .
Como alternativa, você pode fazer:
git config --global core.pager 'less -FRX'
Você pode dizer a git para não usar cores ao usar um pager com:
git config --global color.pager false
Veja env PAGER=less git config --help para detalhes.