Eu não conheço nenhuma maneira oficial de fazer isso, mas eu escrevi isso agora e funciona para mim.
Coloque o script abaixo em um arquivo chamado: color_git_diff.sh
(ou o que você quiser)
#!/usr/bin/env bash
for i in "$@"
do
if grep -q "^M" <<< "$i"
then
echo -e "\e[33m $i \e[0m"
elif grep -q "^D" <<< "$i"
then
echo -e "\e[31m $i \e[0m"
fi
done
para aplicar o script com o qual você chamaria:
git diff --name-status | xargs --delimiter="\n" ./color_git_diff.sh
Obviamente, você não iria querer chamar isso toda vez, então você precisaria colocá-lo em seu bashrc
e atribuir uma função ou um alias a ele - ou algo assim.
Isso só produz saída colorida para arquivos modificados ou excluídos e eu fiz arquivos modificados amarelo - Eu não sei o que o código de escape ansi é para azul fora do topo da minha cabeça - Eu acho que talvez \e[36m
? de qualquer maneira, se você quiser usá-lo, você pode adicioná-lo você mesmo-