Home | Escopo | Processo | Design/Mockups | Configuração | Arquitetura | Gerência | Código | BD | Qualidade | Frontend | Backend |
---|
Descrição
Esta seção da documentação visa apresentar os processos de desenvolvimento utilizados no projeto Globo Aplausos e os documentos referentes as formas de organização do time.
Sumário
GitFlow
GitFlow é o processo de contribuição para os projetos utilizando a ferramenta de gerenciamento de versões Git. As definições descritas serão utilizadas nos repositórios do Frontend e Backend do projeto.
Branches
Aqui será definida a estratégia de branching do projeto.
Branches protegidas
As branches protegidas não devem ser apagadas e possuem regras definidas:
main
A branch main é a principal do projeto. Esta branch representa o código do ambiente de produção da aplicação e deve ser alterada somente a partir de Merge Requests vindos da branch de development ou fixes. Somente AGES III e IV podem fazer Merges dos Mas e realizar alterações na branch main.
development
A branch development é a branch default para desenvolvimento do projeto. Esta deve ser a branch de partida de todas as outras branches do projeto, exceto fix. Essa branch é protegida para modificação que não seja através de Merge Requests. Qualquer AGES pode criar um MR pra ela e fazer merge desse MR.
Branches não protegidas
Feature:
Branches para a implementação de funcionalidades novas. O padrão de nomenclatura utilizado é feature/atividade, que representa uma breve descrição do que está sendo implementado na branch. Exemplo: feature/tela-login.
MRs dessas branches devem sempre ser abertos para development.
Fix
Branches para correção de bugs. O padrão de nomenclatura utilizado é fix/problema, que representa uma breve descrição do que está sendo corrigido na branch. Exemplo: fix/bug-botão-header.
Em caso de Fix
, devem ser abertos Merge Requests para main e development.
Como criar uma branch?
Para garantir que o processo de desenvolvimento esteja sempre atualizado, lembre-se de executar o seguinte comando na branch dev antes de criar uma branch nova:
git pull origin development
Depois da execução desse comando é necessário oficialmente criar a Branch, para isso, execute o seguinte comando:
git checkout -b <nomeDaBranch>
Assim que criar a branch, é necessário fazer um \`push\`para garantir que a mesma estará remota:
git push --set-upstream origin <nomeDaBranch>
Pronto! Agora você já pode começar a programar na sua branch.
Como adicionar suas mudanças ao fluxo de desenvolvimento:
Commits
Salvando Localmente
Para garantir que apenas o código necessário para funcionamento da tarefa lembre-se de realizar o comando add
apenas nos arquivos essenciais para a tarefa:
git add <nomeDoArquivo>
git commit -m 'descrição da tarefa em português'
Salvando Remotamente
Depois de finalizar o desenvolvimento, envie todos os commits da sua máquina para o GitLab.
Para isso depois de realizar as etapas de salvamento local, salve remotamente com o comando push
:
git push
Abrindo um Merge Request
Após a realização do desenvolvimento de uma tarefa e ela estiver de acordo com os critérios de aceitação, é necessário que a mesma seja enviada para a branch de development, então deve-se abrir um Merge Request.
Para criar o Merge Request devem ser seguidos os seguintes passos:
-
Selecionar a branch de origem (branch de desenvolvimento) e branch (branch de development) de destino.
-
Selecionar
Compare branch and continues
. -
No campo Title, preencher com um título que descreva a funcionalidade implementada ou bug corrigido e o número da tarefa que está sendo realizada.
-
No campo Description, preencher utilizando o seguinte template:
## Link da Tarefa
[Inserir link da tarefa do Trello]
## Descrição
[Descreva brevemente o propósito e as principais mudanças e adições que foram feitas nesta solicitação de Merge]
## Checklist
- [ ] Não deixou string literais no código.
- [ ] Utilizou as variáveis padronizadas do design system (cor, títulos/fontes).
- [ ] Não deixou código comentado.
## Screenshots (se aplicável)
[Adicione capturas de tela ou imagens relevantes, se necessário.]
-
Na seção Asignee, selecione Assign to me para que você fique registrado como responsável pelo desenvolvimento daquela tarefa.
-
Em Labels adicione o tipo da tarefa que foi realizado.
-
Revise se os arquivos estão corretos e clique em Submit Merge Request.
Revisando o Merge Request
Todo Merge Request deve ter pelo menos duas aprovações, sendo uma delas obrigatoriamente de um AGES III.
O merge deve ser feito com a estratégia squash-commits e as branches devem ser excluídas após o merge para a branch de destino.