Estrutura de commit convencional
- Primeira linha começando pelo tipo de commit, seguido de dois pontos (
:), seguido de uma mensagem resumindo o commit. - O tipo pode eventualmente ser complementado por um âmbito entre parêntesis, para especificar o componente ou a funcionalidade alterada.
- Opcionalmente, pode-se incluir, após uma linha em branco, um ou mais parágrafos complementares descrevendo detalhadamente o commit. A sintaxe Markdown pode ser usada.
- Por fim, uma útima linha (separada das precedentes por uma linha em branco) deve conter uma referência ao ticket a que se relaciona o commit. A referência deve ser formatada da seguinte forma:
Refs: #XXX, ouFix: #XXXpara fechar o ticket automaticamente ao ser feita a fusão com o branche de destino.
Exemplo de commit convencional
Os commits são redigidos em francês. Exemplo de log de commit completo:
fix: réparer le lien vers la licence GPL dans le pied des pages du privé
en le remplaçant par un simple lien vers le site officiel gnu.org
Fix: #5328
Lista dos tipos de commit
Convenção usada em SPIP.
| Tipo | Significado |
|---|---|
| build | Altera um script de compilação do programa ou altera as dependências externas. Indica igualmente uma elevação de versão. |
| change | Altera a implementação de uma funcionalidade — pode alterar as assinaturas de funções (≠ refactor) |
| chore | Trabalho de fundo sem alteração do código (disponibilizar uma versão, regenerar código compilado) |
| ci | Reativo à integração contínua |
| deprecate | Tornar obsoleta (sem a remover) uma funcionalidade |
| docs | Relativo à documentação (docs, readme, changelog) |
| feat | Inclui uma funcionalidade |
| fix | Corrige um problema |
| i18n | Relativo às traduções e strings de idioma |
| perf | Melhora o desempenho do algorítmo ou do programa |
| refactor | Reescrita do código, sem alterar a implementação |
| remove | Remoção de código ou de funcionalidade (anteriormente indicado como obsoleto) |
| revert | Anula uma alteração precedente (commit) |
| security | Relativo a segurança |
| style | Relativo às regras de escrita do código (Coding Standard) |
| test | Relativo aos testes do software |
Para ir além
Consulte o site Conventional Commits.