|
|
|
## Processo de Desenvolvimento
|
|
|
|
|
|
|
|
Esta seção detalha o fluxo de trabalho do time, definindo os padrões de versionamento, organização de branches e revisão de código.
|
|
|
|
|
|
|
|
## Sumário
|
|
|
|
|
|
|
|
1. [Gitflow](#gitflow)
|
|
|
|
2. [Merge Requests](#merge-requests)
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
### Gitflow
|
|
|
|
|
|
|
|
Utilizamos um modelo de **Gitflow** adaptado. O fluxo consiste no uso de branches de funcionalidade (*features*) que partem e retornam para a branch de desenvolvimento (`develop`).
|
|
|
|
|
|
|
|
> **Nota:** Todas as novas branches de trabalho devem ser criadas a partir da `develop`.
|
|
|
|
|
|
|
|
- **Commits:** Seguimos o padrão de [Conventional Commits](https://www.conventionalcommits.org/) (ex: `feat:`, `fix:`, `chore:`).
|
|
|
|
|
|
|
|
- As mensagens de commit devem sempre estar em **inglês** e seguir o formato:
|
|
|
|
|
|
|
|
`tipo-idcard: descrição`
|
|
|
|
|
|
|
|
Exemplo: `feat-idcard: add new ID card validation logic`
|
|
|
|
|
|
|
|
- **Branches:** criar branches com nomes relacionados à funcionalidade ou correção.
|
|
|
|
- Seguir o padrão: `tipo-idcard`
|
|
|
|
Exemplos: `feat-idcard`, `fix-idcard`, `chore-idcard`
|
|
|
|
|
|
|
|
#### Criação
|
|
|
|
|
|
|
|
Para garantir que o processo de desenvolvimento esteja sempre atualizado, lembre-se de executar o seguinte comando na branch development 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.
|
|
|
|
|
|
|
|
### Merge Requests
|
|
|
|
|
|
|
|
Depois de uma task ter sido desenvolvida e estiver pronta de acordo com os critérios de aceitação, é necessário que a mesma seja enviada para a branch de desenvolvimento. Para isso é necessário abrir um Merge Request pela platafora GitLab:
|
|
|
|
|
|
|
|
#### Criando o Merge Request
|
|
|
|
|
|
|
|
A criação pode ser realizada na seção Merge Requests do repositório em que a branch foi criada. Clicando no botão `New Merge Request` siga os seguintes passos:
|
|
|
|
|
|
|
|
1. Selecionar a branch de origem (sua branch de desenvolvimento);
|
|
|
|
2. Selecionar a branch de destino (branch dev);
|
|
|
|
3. Selecione `Compare branches and continue`
|
|
|
|
4. Em `Title`, escreva um título que descreva a funcionalidade adicionada ou bug corrigido;
|
|
|
|
5. Em `Description`, escreva uma descrição com uma breve justificativa nos arquivos que foram alterados;
|
|
|
|
6. Na seção `Assignee`, selecione `Assign to me` para que fique registrado quem foi o responsável pelo desenvolvimento daquela tarefa (a pessoa selecionada será chamada caso o revisor tenha dúvidas sobre a tarefa);
|
|
|
|
7. Em `Milestone` selecione a Sprint em que a tarefa foi realizada;
|
|
|
|
8. Em `Labels`selecione qual é o tipo de tarefa que foi realizada;
|
|
|
|
9. Por último, revise se os arquivos que estão sendo enviados estão corretos e clique em `Submit Merge Request`.
|
|
|
|
|
|
|
|
#### Revisando o Merge Request
|
|
|
|
|
|
|
|
A revisão de merge request pode ser realizada por qualquer desenvolvedor, mas é preciso da aprovação de pelo menos um AGES III ou AGES IV para que a mesma seja incorporada na dev.
|
|
|
|
|
|
|
|
Na hora de revisar o Merge Request, entre na branch em sua máquina e teste a funcionalidade.
|
|
|
|
|
|
|
|
Caso haja pendências, relacionadas a documentação do código, padronização ou arquivos enviados, não exite em realizar um novo commit na branch com as mudanças necessárias antes de realizar a integração. |
|
|
|
\ No newline at end of file |