Uma solução que simplesmente retira o espaço em branco à direita do arquivo não é aceitável em todas as circunstâncias. Ele funcionará em um projeto que teve essa política desde o início e, portanto, não existe espaço em branco que você não tenha apenas se adicionado ao seu próximo commit.
Suponha que você deseje apenas não adicionar novas instâncias do espaço em branco à direita, sem afetar o espaço em branco existente nas linhas que você não editou, a fim de manter seu commit livre de alterações irrelevantes para o seu trabalho.
Nesse caso, com o git, você pode usar um script como este:
#!/bin/sh
set -e # bail on errors
git stash save commit-cleanup
git stash show -p | sed '/^\+/s/ *$//' | git apply
git stash drop
Ou seja, escondemos as alterações e filtramos todas as +
linhas no diff para remover seus espaços em branco à medida que reaplicamos a alteração no diretório de trabalho. Se este canal de comando for bem-sucedido, descartamos o esconderijo.