Otimize seu fluxo de desenvolvimento no GitHub: Criando Templates de Pull Requests para uma Colaboração Mais Eficiente
Uma feature muito poderosa para equipes de desenvolvimento certamente é a boa utilização das branchs e o fluxo de Pull request’s adequado, mas assim como a maioria dos dev’s que devem estar lendo esse artigo, o tempo é muito curto, e nem sempre é possivel parar e detalher seus PR’s e Issues no Github. Mas digamos que exista uma maneira de agilizar esse processo e que nem muitas pessoas tem conhecimento da ferramenta!
Bom, o Github atualmente nos oferece a oportunidade de criar templates, sejam pra Issues (que futuramente podem ir parar em um board da própria plataforma), ou até mesmo de PR’s onde se é possível economizar um bom tempo escrevendo as tarefas que foram concluídas!
Atenção:
Para iniciar esse processo de criação dos templates primeiro alguns detalhes devem estar claros! Os templates de PR e Issue só ficarão disponíveis se estiverem na branch principal do projeto (geralmente a main ou master), e os mesmos devem ser escritos em arquivos .md (markdown).
Criando o template de Pull Request
Para começar-mos a criar o template, na raiz do seu projeto deve ser criada uma pasta chamada .github
que armazenará os templates, dentre outras funções que o github oferece (como as actions
, mas isso não vem ao caso nesse artigo).
Dentro da pasta você deve criar um arquivo chamado PULL_REQUEST_TEMPLATE.md
.
Agora dentro desse mesmo arquivo podemos configurar nosso template de Pull request, como no exemplo a seguir:
#### Descrição
<!--
This PR [adds/removes/fixes/replaces] the [feature/bug/etc].
-->
#### Que tipo de PR é este?
- [ ] 🍕 Feature
- [ ] 🐛 Bug Fix
- [ ] 📝 Documentation Update
- [ ] 🎨 Style
- [ ] 🧑💻 Code Refactor
- [ ] 🔥 Performance Improvements
- [ ] ✅ Test
- [ ] 🤖 Build
- [ ] 🔁 CI
- [ ] 📦 Chore (Release)
- [ ] ⏩ Revert
<!--
Marque com um "x" na caixa que especifique o tipo de PR
Atenção: Essa seção pode ser retirada pois o git as reconhece como task a serem feitas. (opcional)
-->
#### Documentos e/ou arquivos relacionados
<!--
Please use this format link issue numbers: Fixes #123
or link with a description: [Link to the issue](external link)
-->
#### Prints (se necessário)
<!-- Visual changes require screenshots -->
#### Passos para QA
<!--
Please provide some steps for the reviewer to test your change. If you have wrote tests, you can mention that here instead.
1. Click a link
2. Do this thing
3. Validate you see the thing working
-->
#### Adicionado a documentação?
- [ ] 📜 README.md
- [ ] 📜 CHANGELOG.md
- [ ] 📕 storybook
- [ ] 🙅 no documentation needed
Nota: As anotações em inglês permaneceram pois nos templates que uso, geralmente as PR’s são em inglês.
Bom, com isso concluído, basta salvar o arquivo e subi-lo no github, para isso abra o terminal e digite as seguintes linhas:
git add .
Adiciona os novos arquivos
git commit -m “feat: add pull request template”
Adiciona uma mensagem ao commit (nesse caso estou utilizando o conventional commit)
git push origin {nome_da_branch_default}
Mude o nome da branch principal e pronto! você agora possui novos templates de pull request, vamos testar?
Testando o template
Agora que você ja criou seu template, chegou a hora de testa-lo, primeiramente, crie uma nova branch baseada na principal (main ou master geralmente), para isso você estando atualmente nela, pode utilizar do seguinte comando:
git checkout -b {nome_da_nova_branch}
Cria uma nova branch, baseada na que você está no momento
Agora faça alguma alteração no código para fazer um novo commit de teste, e refaça os passos de subir as alterações com os comandos:
git add .
Adiciona os novos arquivos
git commit -m “testando template de pr”
Adiciona uma mensagem ao commit
git push origin {nome_da_nova_branch}
Mude o nome da nova branch que você criou e pronto!
Agora você pode ir até o repositório no github e validar os novos templates que lá estão na seção de Pull request!
Agora seu time pode manter um padrão e agilizar a análise de PR’s e descrição das funcionalidades!
E foi isso por hoje pessoal! Agradeço pela leitura do meu primeiro artigo e espero ter ajudado da melhor maneira possível, caso possam compartilhar seria de grande ajuda. Espero postar novos artigos em breve e acredito que sempre irá melhorar a qualidade deles com os feedbacks. Novamente, muito obrigado!
Fonte: https://github.com/pedrovs3