Board
Para o gerenciamento do projeto e acompanhamento das tarefas, foi criado um board no Notion onde temos as tarefas separadas por épicos.
Sempre que for trabalhar em um item, seja ele correção ou funcionalidade nova, verifique se já não existe uma tarefa igual no board. Em caso negativo, crie uma tarefa nova.
Para acessar o board, clique aqui
GitFlow
No projeto, seguimos o GitFlow conforme a imagem abaixo:
Padrão de nomenclatura
Branches
Toda branch terá todo seu texto em minúsculo com palavras separadas por -
.
A única seção é no id da US que podemos usar letras maiúsculas.
Commits
Todo commit deverá possuir a seguinte estrutura:
{prefixo}({_item alterado/funcionalidade}): {id-us} Descrevendo o que foi feito no gerúndio
Prefixos
- feat: trabalho em uma feature nova
- fix: correção de algum bug ou problema na aplicação
- chore: alterações relacionadas a configuração/código que não vai para produção
- refactor: refatoração de alguma parte do código
Exemplos de mensagem de commit
- feat(cadastro): Criando componente de tela de login
- fix(cadastro): Corrigindo erro ao passar CPF vazio
- chore(cadastro): Adicionando configuração do swagger para o endpoint de cadastro de usuário
main
Branch principal do projeto, apenas código testado e validado com o cliente pode ir para a main.
feat/{id-us}-{nome-tarefa}
Feature branches são onde iremos desenvolver o código referente a uma funcionalidade.
Uma vez que o código tenha testes unitários e integração(backend), abrimos um Merge Request para a develop
Exemplos de nome são:
- feat/VDC-01-criar-tela-login
- feat/VDC-02-criar-endpoint-login
develop
Branch de integração dos códigos desenvolvidos durante uma sprint. Todo MR de funcionalidades e correções é aberto para a develop e então, no final da sprint, um MR é aberto da develop para uma branch de release
release/{numero-sprint}
Branches de release servem para agrupar o código desenvolvido até o code freezing de uma sprint e fazer o deploy na AWS.
Uma vez feito o deploy e validado com os clientes, abrimos um MR da release branch para main
Exemplos de nome são:
- release/1
- release/2
Desenvolvendo uma US
Escolhendo uma tarefa
- Acesse o board
- Crie/Escolha uma tarefa
- Ponha seu usuário como Assignee
- Mova a tarefa para In Progress quando iniciar o desenvolvimento
Fluxo de Desenvolvimento
- Crie a branch para o seu trabalho
- Commite as alterações periodicamente seguindo o padrão de mensagens de commit
- Crie os testes necessários
- Abra o MR para develop
- Mova o Card da tarefa para In Review
- Corrija/discuta os apontamentos feitos no MR
- Realize o merge da tarefa quando duas pessoas tiverem aprovado