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 es…


This content originally appeared on DEV Community and was authored by Daniel Wildt

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


This content originally appeared on DEV Community and was authored by Daniel Wildt


Print Share Comment Cite Upload Translate Updates
APA

Daniel Wildt | Sciencx (2025-11-16T03:49:49+00:00) Template para mensagens de commit. Retrieved from https://www.scien.cx/2025/11/16/template-para-mensagens-de-commit/

MLA
" » Template para mensagens de commit." Daniel Wildt | Sciencx - Sunday November 16, 2025, https://www.scien.cx/2025/11/16/template-para-mensagens-de-commit/
HARVARD
Daniel Wildt | Sciencx Sunday November 16, 2025 » Template para mensagens de commit., viewed ,<https://www.scien.cx/2025/11/16/template-para-mensagens-de-commit/>
VANCOUVER
Daniel Wildt | Sciencx - » Template para mensagens de commit. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2025/11/16/template-para-mensagens-de-commit/
CHICAGO
" » Template para mensagens de commit." Daniel Wildt | Sciencx - Accessed . https://www.scien.cx/2025/11/16/template-para-mensagens-de-commit/
IEEE
" » Template para mensagens de commit." Daniel Wildt | Sciencx [Online]. Available: https://www.scien.cx/2025/11/16/template-para-mensagens-de-commit/. [Accessed: ]
rf:citation
» Template para mensagens de commit | Daniel Wildt | Sciencx | https://www.scien.cx/2025/11/16/template-para-mensagens-de-commit/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.