https://github.com/lennonjesus/mprj-commit-guide
https://github.com/lennonjesus/mprj-commit-guide
git guideline style-guide
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/lennonjesus/mprj-commit-guide
- Owner: lennonjesus
- License: mit
- Created: 2016-12-06T17:33:27.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-12-06T17:35:09.000Z (over 9 years ago)
- Last Synced: 2026-01-02T12:36:38.842Z (6 months ago)
- Topics: git, guideline, style-guide
- Size: 1.95 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MPRJ Padrão de Mensagens de Commit
### Introdução
Este guia tem a finalidade de propor um padrão para as mensagens de commit nos
projetos do MPRJ.
É fortemente baseado (pra não dizer tradução livre) nos guias de estilo de
commits utilizados em grandes projetos opensource, incluindo o Linux Kernel.
A padronização, além do benefício de unificar o estilo entre as equipes e
projetos, tende a permitir a visualização do histórico como se fosse um
**CHANGELOG** vivo, que é atualizado automaticamente a cada novo commit.
### Mensagens de Commit
##### Estrutura
Uma mensagem de commit consiste de três partes distintas, separadas
obrigatoriamente por uma linha em branco: um **título** *(obrigatório)*, um
**corpo** *(opicional)* e um **rodapé** *(opicional)*.
```
tipo: assunto
corpo
rodapé
```
##### Tipos
- **feat**: Implementação de alguma novidade: Uma feature, funcionalidade, tela,
opção de ação, etc.
- **fix**: Implementação em que a única finalidade é corrigir algum comportamente
errôneo do sistema.
- **docs**: Alterações ou incrementos na documentação do projeto.
- **style**: Refatorações de identação, vírgulas ausentes, otimização de imports
e etc.
- **refactor**: Refatoração/melhoria de código sem alterar funcionalidade.
- **test**: Refatoração ou adição de testes. Apenas testes.
- **chore**: Alterações em arquivos de configuração do projeto ou do ambiente.
Logs, pacotes, dependências e etc.
##### Assunto
Assuntos não devem conter mais do que 50 caracteres, devem começar com uma
letra maiúscula e não devem ter um ponto final.
Use um tom imperativo para descrever o que um commit faz, ao invés de o que
ele fez.
##### Corpo
Nem todos os commits são suficientemente complexos para necessitar de um corpo.
Você pode deixar de incluir o corpo em casos em que seja possível deixar clara
a intenção do commit apenas com o título.
Quando necessário, use o corpo do commit para explicar o que foi feito e por
qual motivo.
Nunca use o corpo do commit para dizer "como" foi feito.
##### Rodapé
O rodapé deve ser utilizado quando for necessário se referir a IDs de sistemas
de gerenciamento de bugs e tarefas.
##### Exemplo de mensagem de commit
```
feat: Disponibiliza opção de salvar e enviar o relatório
Disponibilizada a opção de salvar e enviar o relatório para a CGMP para os
seguintes perfis de usuários:
- promotor
- acessor
Tarefa: #123
Ver também: #456, #789
```