Back to TILs

Formatando o código automaticamente antes do commit

Escrever um arquivo .gitattributes contendo:

*.java filter=clang-format-java

Acrescentar os operações clean e smudge

git config --global filter.clang-format-java.clean 'clang-format -assume-filename=test.java'
git config --global filter.clang-format-java.smudge cat

Quando os arquivos são enviados para stage (git add) são passados via stdin então não dá para saber qual o tipo do arquivo. O uso da opção -assume-filename=test.java faz com que o clang-format saiba como proceder.

Referências