Outro dia conversando com uns amigos, eis que surge uma polêmica, qual é o melhor, um commit "gordo" com um monte de alterações de uma só vez ou um commit "magro" em que é por alteração ou arquivo?

Bom, acredito eu que é uma questão válida, porém acredito mais ainda que compensa utilizar um commit magro em que ele representa algo, uma tarefa, uma alteração como um hotfix ou mesmo uma simples refatoração de código. Com um commit simples fica mais fácil de entender os passos ocorridos dentro de um projeto, em que a descrição do commit se iguala com o que fora feito nele.

Já um commit gordo ele seria como um "pacote" completo cheio de alterações e/ou implementações onde para você tentar se encontrar nele, você teria que ficar literalmente lendo linha por linha do código alterado. Esse tipo de commit geralmente é visto em momentos que foram feitos merge entre branchs, para ser enviado para um ambiente como de produção.

Fica na escolha de cada um qual a melhor utilização dos commits, porém acredito sim que cada commit seja para uma única coisa, uma referência, pois fica mais legível e simples de se entender.

Atualmente não existe nada oficial com relação à boas práticas ou mesmo padronização de comentários em commits, mas com um pouco de paciência ou mesmo vontade, você encontra boas dicas por ai como essa aqui.