Pode ser necessário definir a configuração color.diff.whitespace, por exemplo, com:
git config color.diff.whitespace "red reverse"
(Suponho que você já tenha definido color.diffou color.uidefinido, autopois diz que vê manchas coloridas de git diffqualquer maneira.)
Se você deseja ajustar com precisão o tipo de erros de espaço em branco destacados em vermelho, é possível alterar core.whitespace, mas blank-at-eolestá ativado por padrão, para que você provavelmente não precise alterar isso no exemplo mencionado.
Uma possível fonte de confusão é que, na saída de git diff, os erros de espaço em branco são destacados apenas nas linhas que são introduzidas, não nas que são removidas. ( Atualização: como Paul Whittaker aponta em sua resposta , que você deve votar novamente :), você pode vê-las revertendo o sentido da diferença git diff -R.)
Você pode encontrar mais documentação sobre essas opções de configuração na página de manual do git config
Se você não quiser usar o -Rkludge, poderá usar a opção WhiteSpace Error Highlight na página do manual diff .
--ws-erro-destaque =
Destaque erros de espaço em branco nas linhas especificadas na cor especificada por color.diff.whitespace. é uma lista separada por vírgula de contexto antigo e novo. Quando essa opção não é fornecida, apenas os erros de espaço em branco nas novas linhas são realçados. Por exemplo, --ws-error-highlights = new, old destaca erros de espaço em branco nas linhas excluídas e adicionadas. tudo pode ser usado como uma abreviação para o contexto antigo e novo.
git diff --ws-error-highlight=new,old <file>
ou
git diff --ws-error-highlight=all <file>
Eu não sei de uma maneira de permanentemente ativar isso e armazenar isso na configuração além de usar um alias:
git config alias.df 'diff --ws-error-highlight=all'
Agora você pode usar:
git df <file>
Para ver as mudanças em vermelho.
Observe que, com o Git 2.11 (quarto trimestre de 2016) , esse alias pode ser substituído por:
git config diff.wsErrorHighlight all
Veja doc sobregit diff e sobregit config .