Skip to content

📄 Padrão de commits para repositórios dentro da Prometeon Brasil.

License

Notifications You must be signed in to change notification settings

marinhomateuspro/padroes-de-commits

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📄
Semantic Commits Patterns - Prometeon BR

Este repositório foi criado com base no repositório do user @iuricode e busca padronizar o commits e o sugerir um workflow aos colaboradores que utilizam as ferramentas Git e Github dentro da empresa.

⌨️ Tipo e Descrição

O commit semântico possui os elementos estruturais abaixo (tipos), que informam a intenção do seu commit ao utilizador(a) de seu código.

  • fix - Commits do tipo fix indicam que seu trecho de código commitado está solucionando um problema (bug fix), (se relaciona com o PATCH do versionamento semântico).

  • feat- Commits do tipo feat indicam que seu trecho de código está incluindo um novo recurso (se relaciona com o MINOR do versionamento semântico).

  • docs - Commits do tipo docs indicam que houveram mudanças na documentação, como por exemplo no Readme do seu repositório. (Não inclui alterações em código).

  • style - Commits do tipo style indicam que houveram alterações referentes a formatações de código, semicolons, trailing spaces, lint... (Não inclui alterações em código).

  • refactor - Commits do tipo refactor referem-se a mudanças devido a refatorações que não alterem sua funcionalidade, como por exemplo, uma alteração no formato como é processada determinada parte da tela, mas que manteve a mesma funcionalidade, ou melhorias de performance devido a um code review.

  • build - Commits do tipo build são utilizados quando são realizadas modificações em arquivos de build e dependências.

  • test - Commits do tipo test são utilizados quando são realizadas alterações em testes, seja criando, alterando ou excluindo testes unitários. (Não inclui alterações em código)

  • chore - Commits do tipo chore indicam atualizações de tarefas de build, configurações de administrador, pacotes... como por exemplo adicionar um pacote no gitignore. (Não inclui alterações em código)

🧭 Issue Referente

  • Aplicar o sufixo '...: ref issue #00' para referenciarmos a issue aberta através da mensagem de commit, sendo 00 substituido pelo número da issue.

🌗 Estágio

  • partial - Commits do tipo partial são utilizados quando são realizadas alterações parciais dentro da branch utilizada que ja carregam uma quantidade relevante de modificações.

  • final - Commits do tipo final indicam que a issue ja foi completamente resolvida e que esta é a versão final para ser realizada um merge junto à branch master.

🪜 Passo a passo

Após a abertura da issue pelo admin do projeto, em seu ambiente de trabalho seguir os seguintes comandos (exemplo campo novo no app):

  • Acessar a branch principal do repositório (geralmente master ou main) e importar os dados mais recentes do repositório remoto:
git checkout master
git pull master
  • Em seguida criar uma nova branch com o tipo de tarefa a ser realizada e o nome da tarefa:
git checkout -b feat/campo-novo
  • Apos concluir a tarefa ou a etapa, adicionar os arquivos editados para a staging area:
git add . # para adicionar todos os arquivos editados
git add arquivo.py # para adicionar somente o arquivo desejado
  • Realizar um 'save' das edições armazenadas no staging area através do git commit atendendo aos padrões de commits e utilizando o sufixo, em seguida realizar um push no repositório remoto:
git commit -m 'feat (campo-novo): ref issue #93 - final'
git push

💻 Pull Request

  • Após realizar o push no repositório remoto, solicitar um pull request dentro do Github selecionando a branch principal e a branch referente a issue solucionada e aguardar a aprovação do admin do projeto.


⬆ Voltar ao top

💈 Padrões de emojis

Tipo de commit Emojis Palavra-chave
Acessibilidade :wheelchair:
Adicionando um teste :white_check_mark: test
Adicionando uma dependência :heavy_plus_sign: build
Alterações de revisão de código 👌 :ok_hand: style
Animações e transições 💫 :dizzy:
Bugfix 🐛 :bug: fix
Comentários 💡 :bulb: docs
Commit inicial 🎉 :tada: init
Configuração 🔧 :wrench: chore
Deploy 🚀 :rocket:
Documentação 📚 :books: docs
Em progresso 🚧 :construction:
Estilização de interface 💄 :lipstick: feat
Infraestrutura 🧱 :bricks: ci
Lista de ideias (tasks) 🔜 :soon:
Mover/Renomear 🚚 :truck: chore
Novo recurso :sparkles: feat
Package.json em JS 📦 :package: build
Performance :zap: perf
Refatoração ♻️ :recycle: refactor
Removendo um arquivo 🔥 :fire:
Removendo uma dependência :heavy_minus_sign: build
Responsividade 📱 :iphone:
Revertendo mudanças 💥 :boom: fix
Segurança 🔒️ :lock:
SEO 🔍️ :mag:
Tag de versão 🔖 :bookmark:
Teste de aprovação ✔️ :heavy_check_mark: test
Testes 🧪 :test_tube: test
Texto 📝 :pencil:
Tipagem 🏷️ :label:
Tratamento de erros 🥅 :goal_net:

💻 Exemplos

Comando git Resultado no GitHub
git commit -m ":tada: Commit inicial" 🎉 Commit inicial
git commit -m ":books: docs: Atualizaçao do README" 📚 docs: Atualizaçao do README
git commit -m ":bug: fix: Loop infinito na linha 50" 🐛 fix: Loop infinito na linha 50
git commit -m ":sparkles: feat: Pagina de login" ✨ feat: Pagina de login
git commit -m ":bricks: ci: Modificaçao no Dockerfile" 🧱 ci: Modificaçao no Dockerfile
git commit -m ":recycle: refactor: Passando para arrow functions" ♻️ refactor: Passando para arrow functions
git commit -m ":zap: perf: Melhoria no tempo de resposta" ⚡ perf: Melhoria no tempo de resposta
git commit -m ":boom: fix: Revertendo mudanças ineficientes" 💥 fix: Revertendo mudanças ineficientes
git commit -m ":lipstick: feat: Estilizaçao CSS do formulario" 💄 feat: Estilizaçao CSS do formulario
git commit -m ":test_tube: test: Criando novo teste" 🧪 test: Criando novo teste
git commit -m ":bulb: docs: Comentários sobre a função LoremIpsum( )" 💡 docs: Comentários sobre a função LoremIpsum( )

About

📄 Padrão de commits para repositórios dentro da Prometeon Brasil.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published