Template para mensagens de commit

Tenho buscado algum tipo de padrão em projetos que tenho criado, mas ao mesmo tempo passo por situações onde estou brincando em projetos diferentes e por vezes testando abordagens diferentes. E não lembro do padrão de mensagem a ser usado.

Em parte estou sempre buscando usar os “conventional commits” mas pensando em diferentes opções. Ter continuidade é um grande problema.

Uma coisa que estou adicionando nos meus repositórios é um template de mensagem de commit.

Exemplo, tenho o arquivo “.gitmessage” no meu repositório, com um conteúdo tipo esse:

# <tipo>: <descrição curta em português>
# |<----  Máximo 72 caracteres  ---->|

# Corpo da mensagem (opcional)
# |<----   Quebre em 72 caracteres   ---->|

# Rodapé (opcional)
# Ex: Relacionado a #123
# Ex: BREAKING CHANGE: descrição da mudança incompatível


# --- TIPOS DE COMMIT ---
# feat:     Nova funcionalidade
# fix:      Correção de bug
# docs:     Documentação
# test:     Adicionar ou modificar testes
# ci:       Integração contínua
# ui:       Interface do usuário
# perf:     Melhoria de performance
#
# --- REGRAS ---
# ✅ Usar verbo no infinitivo (adicionar, corrigir, atualizar)
# ✅ Primeira linha com até 72 caracteres
# ✅ Ser claro e descritivo
#
# ❌ NÃO usar verbos conjugados (adicionado, corrigido)
# ❌ NÃO terminar com ponto final
# ❌ NÃO ser vago ("fix: ajustes")
#
# --- EXEMPLOS ---
# feat: adicionar cálculo de juros compostos
# fix: corrigir validação de campos numéricos
# docs: atualizar README com instruções de instalação

# --- BREAKING CHANGES ---
# Para mudanças incompatíveis, use ! após o tipo:
# feat!: alterar estrutura de retorno da API
#
# E adicione no rodapé:
# BREAKING CHANGE: descrição detalhada da mudança incompatível

Aí faço a configuração para que na mensagem de commit este template seja usado:
git config commit.template .gitmessage

Isso para fazer com que esta mensagem padrão (.gitmessage) seja usada neste repositório em questão.

E aí meu fluxo de trabalho fica assim:

  1. Adiciono os arquivos que vão fazer parte do commit usando “git add <arquivo>".
  2. Na a hora de adicionar a mensagem, eu simplesmente chamo um “git commit” e vai ser aberto um vim para eu poder editar a mensagem, já tendo a mensagem template para mim.
  3. Faço o push, agora garantindo que a mensagem de commit está de acordo.

— Daniel Wildt

Venha junto! Consciência de tempo, projetos paralelos e apoio no seu caminho de aprendizagem, através do projeto A Filosofia da Tranquilidade! Olha também a newsletter e projetos do agora.