GitLab Flow
O Gitlab Flow é uma alternativa ao Gitflow, tendo como principais características sua simplicidade, transparência e efetividade. Esse workflow possui como branch principal a branch Main, de onde são ramificadas as Feature Branches para o desenvolvimento de novas funcionalidades da aplicação, e possui também uma branch Staging utilizada para o deploy da aplicação em um ambiente de homologação.
Ao finalizar o desenvolvimento de uma nova feature, é aberto um Merge Request de uma Feature Branch para a branch Main. O Merge Request só deve ser aprovado após passar por uma revisão e após a conclusão dos testes automatizados. Ao final de cada Sprint, é possível gerar uma tag da versão atual da branch Main e então executar um Fast-forward Merge desta branch para a branch Staging, recebendo assim a versão mais atualizada da aplicação disponível para ser analisada em um ambiente de homologação.
Passo-a-passo
Nomes para Branches
Cada nova branch deve ser aberta a partir da branch Main. Sendo assim, para manter o controle do desenvolvimento da aplicação, essas novas branches devem seguir as seguintes nomenclaturas:
- Novas funcionalidades:
feat/<cod-da-US>-<título-da-US>
- Correção de bug:
bug/<cod-da-US>-<título-da-US>
- Manutenção ou atualização do código:
chore/<cod-da-US>-<título-da-US>
- Refatoração:
refactor/<cod-da-US>-<título-da-US>
- Testes:
test/<cod-da-US>-<título-da-US>
Exemplo: feat/US05-AutenticacaoDeUsuarios
Clonando um repositório
Em sua máquina local, abra um terminal de commando no diretório desejado e insira o seguinte commando:
git clone <URL-do-repositório>
Exemplo: git clone https://tools.ages.pucrs.br/polymathech/polymathech-backend.git
Atualizando um repositório local
É sempre importante manter o repositório local atualizando, evitando assim muitos problemas indesejados durante o desenvolvimento das atividades. Esse recurso é sempre muito importante antes de serem criadas novas branches. Utilize então o seguinte comando:
git pull origin main
Caso você já esteja trabalhando em uma nova branch, seja ela compartilhada com outros desenvolvedores ou não, e queira atualizá-la em relação ao repositório remoto, é possível utilizar apenas o comando
git pull
.
Criando uma nova branch
Entre dentro do diretório do repositório recém clonado utilizando um terminal de commando na sua máquina local, e então digite o seguinte commando:
git checkout -b <nome-da-branch>
Exemplo: git checkout -b bug/US19-CorrecaoDosTestesUnitarios
Após criar sua branch, use o seguinte commando para que ela fique disponível na plataforma Tools da Ages:
git push --set-upstream origin <nome-da-branch>
Exemplo: git push --set-upstream origin bug/US19-CorrecaoDosTestesUnitarios