Isso costuma ser útil para mim, por exemplo, se eu quiser renomear um nome de classe e aplicá-lo em todos os lugares:
$ sed -i 's/Shard/Card/g' $(git ls-files)
Simplificando, a parte entre parênteses extrai todos os nomes de arquivos sob controle de origem para o repositório atual. Esses são aplicados como arquivos de destino para uma sed
substituição no local .
Para se certificar de que não há fragmentos restantes:
$ git grep 'Shard'
EDITAR: Ressalte-se que é uma boa ideia testar se você não quebrou nada, bem como verificar se você não alterou nada apropriado (verifique a diferença).
EDIT 2: Mais curto e independente do ramo, à la @mlafeldt!