Você pode definir uma opção textconv
config para um tipo de arquivo. Consulte "Como realizar diffs de texto de arquivos binários" em gitattributes (5) . O que você deve usar depende do tipo de arquivo.
Exemplo 1 :
Digamos que você queira diferenciar o conteúdo dos arquivos zip. Nesse caso, você deve colocar o seguinte em $ GIT_DIR / config file ou $ HOME / .gitconfig.
[diff "zip"]
textconv = unzip -v
Da próxima vez que você pedir um diff em um arquivo zip em um repositório, ele chamará unzip -v
na versão e fará o diff do texto resultante.
Exemplo 2 :
Para arquivos em pdf, você pode usar, por exemplo, pdfinfo
;
[diff "pdf"]
textconv = pdfinfo
Exemplo 3 :
Se não houver utilidade de informação específica para um tipo de arquivo, você pode, por exemplo use hexdump
(vem com o FreeBSD e o OSX, também disponível no Linux):
[diff "bin"]
textconv = hexdump -v -C