Manter um histórico de commits claro e consistente faz toda a diferença na produtividade de uma equipe. Já se deparou com mensagens de commit como:
“ajustes”
“mais mudanças”
“bug conserta”
Esses títulos genéricos dificultam o entendimento do que realmente foi alterado, bloqueiam a automação de versionamento e tornam revisões muito mais lentas. Neste post, vamos aprender juntos como adotar padrões de commit semântico usando a Conventional Commits e o repositório commit-patterns como referência.
Um commit semântico segue o padrão:
<tipo>[<escopo opcional>]: <descrição resumida>
[corpo opcional com detalhes]
[footer opcional com referências]
login
, api
, UI
).Tipo | Quando usar |
---|---|
feat | Nova funcionalidade (impacta versão minor) |
fix | Correção de bug (impacta versão patch) |
docs | Atualizações em documentação |
style | Formatação, estilo de código (sem alterar lógica) |
refactor | Refatoração sem mudança de comportamento |
perf | Ajustes de performance |
test | Inclusão ou modificação de testes |
build | Mudanças em build/configuração/dependências |
ci | Alterações em scripts/ações de CI/CD |
chore | Tarefas administrativas (lint, .gitignore , etc.) |
cleanup | Remoção de código obsoleto ou comentado |
remove | Exclusão de arquivos ou funcionalidades antigas |
raw | Dados brutos ou grandes arquivos (por ex.: importação de dataset) |
git commit -m "🆕 feat(auth): implementar login via OAuth2"
git commit -m "🐛 fix(api): corrigir timeout na rota /users" \
-m "Ajustado o middleware para estender o timeout em operações pesadas" \
-m "Reviewed-by: Ana Souza Refs #456"
git commit -m "📚 docs: atualizar guia de contribuição"
git commit -m "✨ perf(db): otimizar query de listagem de pedidos"
git commit -m "cleanup: remover funções antigas não utilizadas"
No commit-patterns você encontra:
Adotar um padrão de commit semântico traz clareza, automação e facilita a colaboração. No próximo episódio da série 🚀 Aprenda Comigo, veremos como integrar essas convenções ao seu pipeline de CI/CD usando Semantic Release e GitHub Actions. Fique ligado!