Convenção de commits
Convenção de Mensagens de Commit do Git
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.
Rodapé
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.