Skip to content

Instantly share code, notes, and snippets.

@caioagiani
Created December 7, 2022 13:33
Show Gist options
  • Save caioagiani/2c15f08bf0673e7fd1994c5de9eed89e to your computer and use it in GitHub Desktop.
Save caioagiani/2c15f08bf0673e7fd1994c5de9eed89e to your computer and use it in GitHub Desktop.
Conventional Commits Pattern

Type: Quais são os tipos de commit

O type é responsável por nos dizer qual o tipo de alteração ou iteração está sendo feita, das regras da convenção, temos os seguintes tipos:

  • test(arquivo): indica qualquer tipo de criação ou alteração de códigos de teste.
    Exemplo: Criação de testes unitários.

  • feat(arquivo): indica o desenvolvimento de uma nova feature ao projeto.
    Exemplo: Acréscimo de um serviço, funcionalidade, endpoint, etc.

  • refactor(arquivo): usado quando houver uma refatoração de código que não tenha qualquer tipo de impacto na lógica/regras de negócio do sistema.
    Exemplo: Mudanças de código após um code review

  • style(arquivo): empregado quando há mudanças de formatação e estilo do código que não alteram o sistema de nenhuma forma.
    Exemplo: Mudar o style-guide, mudar de convenção lint, arrumar indentações, remover espaços em brancos, remover comentários, etc..

  • fix(arquivo): utilizado quando há correção de erros que estão gerando bugs no sistema.
    Exemplo: Aplicar tratativa para uma função que não está tendo o comportamento esperado e retornando erro.

  • chore(arquivo): indica mudanças no projeto que não afetem o sistema ou arquivos de testes. São mudanças de desenvolvimento.
    Exemplo: Mudar regras do eslint, adicionar prettier, adicionar mais extensões de arquivos ao .gitignore

  • docs(arquivo): usado quando há mudanças na documentação do projeto.
    Exemplo: adicionar informações na documentação da API, mudar o README, etc.

  • build(arquivo): utilizada para indicar mudanças que afetam o processo de build do projeto ou dependências externas.
    Exemplo: Gulp, adicionar/remover dependências do npm, etc.

  • perf(arquivo): indica uma alteração que melhorou a performance do sistema.
    Exemplo: alterar ForEach por while, melhorar a query ao banco, etc.

  • ci(arquivo): utilizada para mudanças nos arquivos de configuração de CI.
    Exemplo: Circle, Travis, BrowserStack, etc.

  • revert(arquivo): indica a reverão de um commit anterior.

Observações:

  • Só pode ser utilizado um type por commit;
  • O type é obrigatório;
  • Caso esteja indeciso sobre qual type usar, provavelmente trata-se de uma grande mudança e é possível separar esse commit em dois ou mais commits;

https://medium.com/linkapi-solutions/conventional-commits-pattern-3778d1a1e657

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment