Padrões de Commits
Aprenda a escrever commits semânticos e profissionais
Padrões de Commits
Tipos de Commits
Os commits semânticos possuem os elementos estruturais abaixo (tipos), que informam a intenção do seu commit ao usuário do seu código.
feat
Indica que seu trecho de código está incluindo uma nova funcionalidade (relaciona-se ao MINOR no versionamento semântico).
git commit -m ":sparkles: feat: adicionar autenticação de usuário"fix
Indica que seu trecho de código commitado está solucionando um problema (correção de bug), relaciona-se ao PATCH no versionamento semântico.
git commit -m ":bug: fix: corrigir loop infinito na validação"docs
Indica que houve mudanças na documentação, como no README do seu repositório (não inclui mudanças de código).
git commit -m ":books: docs: atualizar README com instruções"style
Indica que houve mudanças relacionadas à formatação de código, ponto e vírgula, espaços em branco, lint (não inclui mudanças de código).
git commit -m ":lipstick: style: corrigir formatação do código"refactor
Refere-se a mudanças devido a refatoração que não alteram a funcionalidade, como melhorias de performance devido a code review.
git commit -m ":recycle: refactor: otimizar algoritmo de busca"perf
Serve para identificar qualquer mudança de código relacionada à performance.
git commit -m ":zap: perf: melhorar tempo de carregamento"test
Usado quando mudanças são feitas em testes, seja criando, modificando ou deletando testes unitários (não inclui mudanças de código).
git commit -m ":test_tube: test: adicionar testes unitários"build
Usado quando modificações são feitas em arquivos de build e dependências.
git commit -m ":package: build: atualizar dependências"ci
Indica mudanças relacionadas à integração contínua.
git commit -m ":bricks: ci: configurar pipeline de deploy"chore
Indica atualizações de tarefas de build, configurações de administrador, pacotes (não inclui mudanças de código).
git commit -m ":wrench: chore: atualizar .gitignore"raw
Indica mudanças relacionadas a arquivos de configuração ou dados brutos.
git commit -m ":card_file_box: raw: dados brutos do projeto"cleanup
Indica limpeza de código, remoção de comentários desnecessários e otimizações gerais.
git commit -m ":broom: cleanup: remover código não utilizado"remove
Indica remoção de arquivos, funcionalidades ou código que não são mais necessários.
git commit -m ":wastebasket: remove: deletar arquivos obsoletos"Padrões de Emojis
| Tipo do commit | Emoji | Palavra-chave |
|---|---|---|
| Acessibilidade | ♿ | :wheelchair: |
| Adicionando um teste | ✅ | :white_check_mark: |
| Atualizando versão de submódulo | ⬆️ | :arrow_up: |
| Rebaixando versão de submódulo | ⬇️ | :arrow_down: |
| Adicionando uma dependência | ➕ | :heavy_plus_sign: |
| Mudanças de revisão de código | 👌 | :ok_hand: |
| Animações e transições | 💫 | :dizzy: |
| Correção de bug | 🐛 | :bug: |
| Comentários | 💡 | :bulb: |
| Commit inicial | 🎉 | :tada: |
| Configuração | 🔧 | :wrench: |
| Deploy | 🚀 | :rocket: |
| Documentação | 📚 | :books: |
| Em progresso | 🚧 | :construction: |
| Estilização de UI | 💄 | :lipstick: |
| Infraestrutura | 🧱 | :bricks: |
| Lista de tarefas (tasks) | 🔜 | :soon: |
| Mover/Renomear | 🚚 | :truck: |
| Nova funcionalidade | ✨ | :sparkles: |
| Package.json em JS | 📦 | :package: |
| Performance | ⚡ | :zap: |
| Refatoração | ♻️ | :recycle: |
| Limpeza de código | 🧹 | :broom: |
| Removendo um arquivo | 🗑️ | :wastebasket: |
| Removendo uma dependência | ➖ | :heavy_minus_sign: |
| Responsividade | 📱 | :iphone: |
| Revertendo mudanças | 💥 | :boom: |
| Segurança | 🔒 | :lock: |
| SEO | 🔍 | :mag: |
| Tag de versão | 🔖 | :bookmark: |
| Teste de aprovação | ✔️ | :heavy_check_mark: |
| Testes | 🧪 | :test_tube: |
| Texto | 📝 | :pencil: |
| Tipagem | 🏷️ | :label: |
| Tratamento de erro | 🥅 | :goal_net: |
| Dados | 🗃️ | :card_file_box: |
Comandos Git Principais
Clonar Repositório
Clona um repositório remoto existente do GitHub para seu ambiente local.
git clone url-do-repositorio-no-githubInicializar Repositório
Inicializa um novo repositório Git no diretório atual.
git initAdicionar Arquivos
Adiciona todos os arquivos e mudanças no diretório atual para a área de staging.
git add .Fazer Commit
Registra as mudanças adicionadas à área de staging com uma mensagem descritiva.
git commit -m "mensagem do commit"Renomear Branch
Renomeia a branch atual (master) para main. O -M é usado para forçar o renomeamento.
git branch -M mainAdicionar Repositório Remoto
Adiciona um repositório remoto chamado origin ao repositório local.
git remote add origin https://github.com/usuario/nome-do-repositorio.gitEnviar para o Repositório
Envia commits da branch local para o repositório remoto.
git push -u origin mainAtualizar do Repositório
Atualiza a branch local com mudanças do repositório remoto.
git pull origin mainConectar Repositório Local
Quando você já tem um repositório local e quer conectá-lo a um repositório remoto no GitHub.
git remote add origin git@github.com:usuario/projeto.gitgit branch -M maingit push -u origin mainBuscar Atualizações
Busca todas as atualizações do repositório remoto sem integrá-las à branch atual.
git fetchPush Forçado Seguro
Forma mais segura de forçar o envio de mudanças locais para o repositório remoto.
git push --force-with-leaseReverter Commit
Cria um novo commit que desfaz as mudanças feitas pelo commit especificado.
git revert id_do_commit_que_vai_ser_revertidoResetar Commit
Reseta o repositório para o estado do commit especificado, deletando todas as mudanças subsequentes.
git reset --hard id_do_commit_anterior_ao_que_vai_ser_apagadoAlterar Mensagem do Commit
Altera a mensagem do último commit.
git commit --amend -m "mensagem_reescrita"Cherry Pick
Usado para pegar um commit específico de outra branch.
git cherry-pick HASH_DO_COMMITTrocar Branch
Troca para uma branch diferente no repositório local.
git switch <branch>Glossário
fork
Cópia de um repositório para sua própria conta do GitHub.
issues
Ferramenta usada para gerenciar tarefas e correções de bugs.
pull request
Mecanismo usado para enviar mudanças propostas ao repositório original.
gist
Ferramenta para compartilhar trechos de código.
💡Dicas Importantes
- ✓Use mensagens claras e descritivas que expliquem o que foi mudado
- ✓Mantenha commits pequenos e focados em uma única funcionalidade
- ✓Use o tipo correto de commit para facilitar a navegação no histórico
- ✓Sempre teste suas mudanças antes de fazer commit