iac
iac copied to clipboard
Precisamos de um padrão para os commits
Precisamos definir algumas regras para padronizar o envio de commits.
Algumas opiniões:
- O texto deve ser em português (palavras em inglês que usamos no português são aceitáveis, tal como deploy e afins)
- Precisa ter o link para a issue que está tentando resolver
- Precisa ser sempre explicando o que está no commit
Obs: Isso são apenas opiniões e vocês podem sugerir coisas novas ou divergir do que eu coloquei, ok?
Sugestão de leitura: https://www.conventionalcommits.org/en/v1.0.0/#summary (Eu olhei por cima, ou seja, não endosso 100% não).
Seria interessante também explicar sobre as melhores práticas do PR tb, assim como a melhor forma de usar o PR draft.
Mais doc para referência: https://docs.ansible.com/ansible/latest/community/documentation_contributions.html
@gomex a organização tem o guia de contribuição no repo guias. Lá estabelecemos que os commits, pull requests, docs, comentários e afim tem que ser em português e o código em inglês. Além disso, orientamos para o uso de feature branch. Podemos adicionar a parte de draft tb.
Perfeito @anapaulagomes! https://github.com/DadosAbertosDeFeira/guias/blob/main/GUIA_DE_CONTRIBUICAO.md
Seria o caso apenas de ver o que sugerimos e se tem coisas especificas para infra ;)
Ainda não definiram sobre isso, né? Dei uma olhada no guia, e tem uma sugestão de lib, mas parece que é só um lint. Tem ferramentas melhores tipo, commitlint. Além de fazer o lint dos commits, podemos configurar as flags e combinar com outras ferramentas de automatizam o processo tanto de commits como de changelogs. Exemplo: ao inves de eu ir lá digitar "feat: alguma coisa", posso simplesmente digitar git commit que a lib já mostra a lista de opções do tipo [feat, doc, ci, chore, etc...]
Vou configurar aqui essas opções e mando no discord e aqui para vermos se é uma opção legal.
link do commitlint: https://github.com/conventional-changelog/commitlint
Utilizamos esse padrão do conventional commits do Angular aqui no trabalho. E me parece que já se tornou o mais utilizado. Ele é bem simples e funciona muito bem. Nossos projetos em node utilizamos pacotes NPM pra poder validar os commits e adicionar hooks no git. Mas pra Pyton não conheço muito. Porém encontrei esse pacote que https://pypi.org/project/commitizen/ Ele tem um CLI que ajuda a criar o commit no padrão correto, além do hook no git pra validação de lint de commit.