Back to TIL list

Formatando o código automaticamente antes do commit

Created at

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
  • clean ocorre quando os arquivos são enviados para o stage
  • smudge quando os arquivos são enviados para o workspace (checkout)

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