DEV Community

Stefany Repetcki
Stefany Repetcki

Posted on • Edited on

COMMITS SEMÂNTICOS

A descrição de um commit bem estruturado consegue prevenir e corrigir possíveis bugs, e pra você que optou por usar commits semânticos eu trouxe um resumão pra sair logo do papel e botar logo em prática!

Trago aqui exemplos claros da diferença de um bom commit e um ruim.

exemplo de commit ruim❌

Ajustes 
Enter fullscreen mode Exit fullscreen mode

exemplo de commit bom✅

feat(banana): funcao-cortar-fruta.js funcao de cortar uma banana 
Enter fullscreen mode Exit fullscreen mode

O exemplo de commit bom mostra o quão importante é ter um commit descrito de forma clara e objetiva. No futuro, quando precisar alterar o método "banana" você pode estar verificando esta alteração e entendendo o que ocorreu naquele commit.

REGRAS DE COMMIT

  • feat: (novo recurso para o usuário)
feat(banana): funcao-descasca-fruta.js funcao de descascar uma banana 
Enter fullscreen mode Exit fullscreen mode
  • build: (adicao de dependencias)
build(package): adicionando moment 
Enter fullscreen mode Exit fullscreen mode
  • perf: (alteração de código que melhora o desempenho)
perf(javascript): index.html mimificando js para desempenho 
Enter fullscreen mode Exit fullscreen mode
  • fix: (correção de bug para o usuário)
fix(banana): carrinho-frutas.js implementei um método para adicionar a fruta banana no carrinho 
Enter fullscreen mode Exit fullscreen mode
  • docs: (mudanças na documentação)
docs(readme): documentei a arquitetura do componente banana 
Enter fullscreen mode Exit fullscreen mode
  • style: (formatação, falta de ponto e vírgula, etc)
style(banana): frutas.js adicionei os pontos e virgulas 
Enter fullscreen mode Exit fullscreen mode
  • refactor: (alteração sem perder a funcionalidade)
refactor(banana): frutas.js alterei as condicionais if's para switch case 
Enter fullscreen mode Exit fullscreen mode
  • test: (adicionar testes ausentes, refatorar testes)
test(banana): fruta-banana.spec.js adicionando cobertura de teste na banana 
Enter fullscreen mode Exit fullscreen mode
  • chore: (mudanças de configuração e bibliotecas que realmente não entram em produção)
chore(package): mudança de versão do eslint e jest 
Enter fullscreen mode Exit fullscreen mode
  • env: (utilizado quando se modifica ou adiciona algum arquivo de CI/CD. Exemplo: modificar um comando do Dockerfile ou adicionar um step a um Jenkinsfile.)
env: banana-bucket.yml adicionando mais uma etapa na pipeline 
Enter fullscreen mode Exit fullscreen mode

Seguindo a documentação conventionalcommits você pode encontrar mais sobre o assunto.

Top comments (1)

Collapse
 
allbertuu profile image
Alberto Albuquerque

Excelente! Dicas simples e poderosas.