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
  • Lucky Draw
  • WikiWiki
  • Wiki
  • Processo

Processo · Changes

Page history
Create Processo authored Mar 13, 2025 by Vitor Jacom de Souza's avatar Vitor Jacom de Souza
Hide whitespace changes
Inline Side-by-side
Processo.md 0 → 100644
View page @ b7ff425e
<table>
<tr>
<th> [Home](home) </th>
<th> [Escopo e Cronograma](Escopo e Cronograma) </th>
<th> [Processo](Processo) </th>
<th> [Design/Mockups](Design/Mockups) </th>
<th> [Configuração](Configuracao) </th>
<th> [Arquitetura](Arquitetura) </th>
<th> [Infra](Infraestrutura) </th>
<th> [Código](Codigo) </th>
<th> [BD](Banco de dados) </th>
</tr>
</table>
## 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](#git-workflow)
## GitFlow
![gitflow](uploads/3df58ab8df702f92f7836f6069f317e7/gitflow.png)
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 MR's 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/US-númerodaUS-atividade-desenvolvida_, que representa uma breve descrição do que está sendo implementado na branch.
Exemplo: _feature/US-03-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/US-01-problema_, que representa uma breve descrição do que está sendo corrigido na branch. Exemplo: _fix/US-01-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:
<div>
```plaintext
git add <nomeDoArquivo>
```
</div>Depois de adicionar todos os arquivos que deseja salvar, execute o commando de commit com uma mensagem curta que represente o que foi trabalhado nesses arquivos adicionados:
<div>
```plaintext
git commit -m 'descrição da tarefa em português'
```
</div>O padrão de commits é que as mensagens devem ser 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`:
<div>
```plaintext
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:
1. Selecionar a branch de origem (branch de desenvolvimento) e branch (branch de development) de destino.
2. Selecionar `Compare branch and continues`.
3. 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.
4. 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.]
```
4. Na seção **Asignee**, selecione **Assign to me** para que você fique registrado como responsável pelo desenvolvimento daquela tarefa.
5. Em **Labels** adicione o tipo da tarefa que foi realizado.
6. 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.
\ No newline at end of file
Clone repository
  • Arquitetura
  • Backend
  • Banco de dados
  • Codigo
  • Configuracao
  • Design & Mockups
  • Escopo e Cronograma
  • Frontend
  • Infraestrutura
  • Processo
  • Qualidade
  • Home