Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Wiki Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Polymathech
  • WikiWiki
  • Wiki
  • processo

Last edited by Arthur Land Avila Apr 06, 2024
Page history
This is an old version of this page. You can view the most recent version or browse the history.

processo

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.

gitlab-flow.svg

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

Clone repository
  • Banco de Dados
  • Sprints
  • analytics
  • arquitetura
  • backend
  • codigo
  • configuracao
  • design_mockups
  • escopo
  • frontend
  • gerencia
  • Home
  • processo
  • qualidade