Ir para o conteúdo principal

Convenção de commits

Convenção de Mensagens de Commit do Git

info

Isso foi adaptado da convenção de commit de Angular.

TL;DR:

Títulos de commit devem corresponder ao seguinte regex:

/^(revert: )?(feat|fix|docs|style|refactor|perf|test|workflow|build|ci|chore|types|wip)(\(.+\))?: .{1,72}/;

Formato Completo de Mensagem

Uma mensagem de commit consiste em um cabeçalho, corpo e rodapé. O cabeçalho possui um tipo, escopo e assunto:

<tipo>(<escopo>): <assunto>
<LINHA EM BRANCO>
<corpo>
<LINHA EM BRANCO>
<rodapé>

O cabeçalho é obrigatório e o escopo do cabeçalho é opcional.

Reverter

Se o commit reverter um commit anterior, ele deve começar com revert:, seguido pelo cabeçalho do commit revertido. No corpo, deveria dizer: Isto reverte o commit <hash>., onde o hash é o SHA do commit que está sendo revertido.

Tipo

Se o prefixo for feat, fix ou perf, ele aparecerá no log de mudanças. Entretanto, se houver alguma Alteração significativa, o commit sempre aparecerá no log de mudanças.

Outros prefixos estão à sua disposição. Prefixos sugeridos são docs, chore, style, refactor, e test para tarefas não relacionadas ao changelog.

Escopo

O escopo se refere a qual seção da aplicação as alterações ocorreram, como SlashCommand, ContextMenu, ou MessageComponents

Assunto

O assunto contém uma descrição sucinta da alteração:

  • Use o imperativo, o tenso atual: "change", não "changed" nem "changes"
  • não use letra maiúscula na primeira letra
  • não encerre sua mensagem com um ponto (.)

Corpo

Assim como no assunto, use o imperativo, presente a tensão O corpo deve incluir a motivação para a mudança e a diferença com o comportamento anterior.

O rodapé deve conter qualquer informação sobre Alterações significativas e também é o lugar para fazer referência a problemas no GitHub que comportem Fechados.

Alterações significativas deve começar com a palavra BREAKING CHANGE: com um espaço ou duas novas linhas. O resto da mensagem de commit é depois utilizado para isso.