|
| [Home](home) | [**Escopo**](escopo) | [Processo](processo) | [Design/Mockups](design_mockups) | [Configuração](configuracao) | [Arquitetura](arquitetura) | [Gerência](gerencia) | [Código](codigo) | [BD](Banco de Dados) | [Qualidade](qualidade) | [Frontend](frontend) | [Backend](backend) | [Analytics](analytics)
|
|
<table>
|
|
| :----------: | :-------------------------------: | :------------------: | :--------------: | :--------------------------: | :--------------------: | :------------------------: | :--------------: | :---------------: | :--------------------: | :---------------: | :--------------------: | ------------: |
|
|
<tr>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Home](home)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[**Escopo**](escopo)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Processo](processo)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Design/Mockups](design_mockups)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Configuração](configuracao)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Arquitetura](arquitetura)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Gerência](gerencia)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Código](codigo)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[BD](Banco%20de%20Dados)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Qualidade](qualidade)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Frontend](frontend)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Backend](backend)
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
|
|
|
|
[Analytics](analytics)
|
|
|
|
</th>
|
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
|
|
# Processos de Desenvolvimento
|
|
# Processos de Desenvolvimento
|
|
|
|
|
|
Este documento detalha os processos essenciais para colaborar de forma eficaz no projeto utilizando o Git, nosso sistema de controle de versão.
|
|
Este documento detalha os processos essenciais para colaborar de forma eficaz no projeto utilizando o Git, nosso sistema de controle de versão.
|
|
|
|
|
|
## Introdução ao Git
|
|
## Introdução ao Git
|
|
|
|
|
|
O Git é um sistema de controle de versão distribuído que facilita a colaboração em equipe, permitindo rastrear alterações, reverter versões e gerenciar o desenvolvimento de software de maneira organizada e eficiente.
|
|
O Git é um sistema de controle de versão distribuído que facilita a colaboração em equipe, permitindo rastrear alterações, reverter versões e gerenciar o desenvolvimento de software de maneira organizada e eficiente.
|
|
|
|
|
|
## Git Workflow
|
|
## Git Workflow
|
|
|
|
|
|
![Diagrama_em_branco](uploads/69ea8599f5b9adaf40e17296d9a868ed/Diagrama_em_branco.png)
|
|
![Diagrama_em_branco](uploads/69ea8599f5b9adaf40e17296d9a868ed/Diagrama_em_branco.png)
|
|
|
|
|
|
## Branches Protegidas
|
|
## Branches Protegidas
|
|
|
|
|
|
As branches protegidas não devem ser apagadas e possuem regras definidas:
|
|
As branches protegidas não devem ser apagadas e possuem regras definidas:
|
|
|
|
|
|
### Main
|
|
### Main
|
|
|
|
|
|
Branch dedicada para versões estáveis, que você pode utilizar para rollback em caso de problemas. Nenhum desenvolvimento ou hotfix ocorre diretamente aqui.
|
|
Branch dedicada para versões estáveis, que você pode utilizar para rollback em caso de problemas. Nenhum desenvolvimento ou hotfix ocorre diretamente aqui.
|
|
|
|
|
|
### Master
|
|
### Master
|
|
|
|
|
|
Branch estável usada para deploy em produção. Versões prontas para produção são lançadas aqui após os testes e verificações finais.
|
|
Branch estável usada para deploy em produção. Nessa branch serão geradas as tags de versões prontas para produção após o código passar nos testes e verificações.
|
|
|
|
|
|
|
|
### Develop
|
|
|
|
|
|
### Develop
|
|
|
|
Branch onde o desenvolvimento principal acontece. Funcionalidades são integradas e testadas antes de serem consideradas prontas para produção.
|
|
Branch onde o desenvolvimento principal acontece. Funcionalidades são integradas e testadas antes de serem consideradas prontas para produção.
|
|
|
|
|
|
## Branches não Protegidas
|
|
## Branches não Protegidas
|
|
|
|
|
|
### Feature
|
|
### Feature
|
|
|
|
|
|
|
|
Ramificações da develop, usadas para desenvolver novas funcionalidades de forma isolada, devem ser criadas com o seu nome em inglês. Abaixo está um exemplo do padrão de nomenclatura a ser seguido na criação desse tipo de branch.
|
|
|
|
|
|
Ramificações da develop, usadas para desenvolver novas funcionalidades de forma isolada.
|
|
US-Número da US-Breve descrição da tarefa
|
|
|
|
|
|
### Hotfix
|
|
Exemplo:
|
|
|
|
|
|
|
|
US15 - Desenvolver autenticação do login do usuário.
|
|
|
|
|
|
|
|
Nome da branch - US15-AuthLogin
|
|
|
|
|
|
|
|
### Hotfix
|
|
|
|
|
|
Criada a partir da master para corrigir problemas críticos. Uma vez resolvido o problema, o hotfix é mesclado tanto na master quanto na develop, mantendo a correção na versão de produção e no código em desenvolvimento.
|
|
Criada a partir da master para corrigir problemas críticos. Uma vez resolvido o problema, o hotfix é mesclado tanto na master quanto na develop, mantendo a correção na versão de produção e no código em desenvolvimento.
|
|
|
|
|
... | @@ -44,61 +108,59 @@ incluir aqui as padronizações que iremos utilizar. |
... | @@ -44,61 +108,59 @@ incluir aqui as padronizações que iremos utilizar. |
|
## Passo a passo para utilização do Git:
|
|
## Passo a passo para utilização do Git:
|
|
|
|
|
|
1. Clonar o projeto
|
|
1. Clonar o projeto
|
|
```
|
|
|
|
|
|
```plaintext
|
|
git clone <endereço-repositorio-projeto>
|
|
git clone <endereço-repositorio-projeto>
|
|
```
|
|
```
|
|
|
|
|
|
2. Criando uma nova branch
|
|
2. Criando uma nova branch
|
|
|
|
|
|
2.1 Primeiro atualize a branch para pegar mudanças feitas.
|
|
2\.1 Primeiro atualize a branch para pegar mudanças feitas. Para garantir que o processo de desenvolvimento esteja sempre atualizado, lembre-se de executar o seguinte comando na branch develop antes de criar uma branch nova:
|
|
Para garantir que o processo de desenvolvimento esteja sempre atualizado, lembre-se de executar o seguinte comando na branch develop antes de criar uma branch nova:
|
|
|
|
```
|
|
```plaintext
|
|
git pull origin develop
|
|
git pull origin develop
|
|
```
|
|
```
|
|
|
|
|
|
2.2 Crie a nova branch
|
|
2\.2 Crie a nova branch
|
|
|
|
|
|
OBS: Branches não devem possuir espaço no nome, substituir espaços ' ' por traços '-'
|
|
OBS: Branches não devem possuir espaço no nome, substituir espaços ' ' por traços '-'
|
|
|
|
|
|
Depois da execução de atualização é necessário oficialmente criar a Branch, para isso, execute o seguinte comando:
|
|
Depois da execução de atualização é necessário oficialmente criar a Branch, para isso, execute o seguinte comando:
|
|
```
|
|
|
|
|
|
```plaintext
|
|
git checkout -b <nomeDaBranch>
|
|
git checkout -b <nomeDaBranch>
|
|
```
|
|
```
|
|
|
|
|
|
3. Realizando commit
|
|
3. Realizando commit Realize commits para salvar as alterações realizadas na sua branch.
|
|
Realize commits para salvar as alterações realizadas na sua branch.
|
|
|
|
|
|
|
|
3.1 Adicione as alterações ao commit
|
|
3\.1 Adicione as alterações ao commit 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:
|
|
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:
|
|
|
|
```
|
|
```plaintext
|
|
git add <nomeDoArquivo>
|
|
git add <nomeDoArquivo>
|
|
```
|
|
```
|
|
|
|
|
|
3.2 Realizando o commit
|
|
3\.2 Realizando o commit 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:
|
|
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:
|
|
|
|
```
|
|
```plaintext
|
|
git commit -m 'descrição do commit'
|
|
git commit -m 'descrição do commit'
|
|
```
|
|
```
|
|
|
|
|
|
4. Salve as alterações remotamente
|
|
4. Salve as alterações remotamente Depois de finalizar o desenvolvimento, envie todos os commits da sua máquina para o servidor remoto. Para isso depois de realizar as etapas de salvamento local, salve remotamente com o comando `push`:
|
|
Depois de finalizar o desenvolvimento, envie todos os commits da sua máquina para o servidor remoto. Para isso depois de realizar as etapas de salvamento local, salve remotamente com o comando `push`:
|
|
|
|
```
|
|
```plaintext
|
|
git push
|
|
git push
|
|
```
|
|
```
|
|
|
|
|
|
5. Merge Request para a branch master
|
|
5. Merge Request para a branch master 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 principal (master). Para isso é necessário abrir um Merge Request pela platafora GitLab:
|
|
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 principal (master). Para isso é necessário abrir um Merge Request pela platafora GitLab:
|
|
|
|
|
|
|
|
5.1 Criando Merge Request
|
|
5\.1 Criando Merge Request A criação pode ser realizada na seção "Merge Request" do repositório em que a branch foi criada. Clique no botão `Merge Request` e siga os passos abaixo:
|
|
A criação pode ser realizada na seção "Merge Request" do repositório em que a branch foi criada.
|
|
|
|
Clique no botão `Merge Request` e siga os passos abaixo:
|
|
|
|
|
|
|
|
1. Selecionar a branch de origem (sua branch de desenvolvimento);
|
|
1. Selecionar a branch de origem (sua branch de desenvolvimento);
|
|
2. Selecionar a branch de destino (branch master);
|
|
2. Selecionar a branch de destino (branch master);
|
|
4. Em `Title`, escreva um título que descreva a funcionalidade adicionada ou bug corrigido;
|
|
3. Em `Title`, escreva um título que descreva a funcionalidade adicionada ou bug corrigido;
|
|
5. Em `Description`escreva uma descrição das alterações realizadas.
|
|
4. Em `Description`escreva uma descrição das alterações realizadas.
|
|
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);
|
|
5. 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 `Reviewer` indique um membro AGES III ou IV para revisar as alterações propostas.
|
|
6. Em `Reviewer` indique um membro AGES III ou IV para revisar as alterações propostas.
|
|
8. Em `Milestone` selecione a Sprint em que a tarefa foi realizada;
|
|
7. Em `Milestone` selecione a Sprint em que a tarefa foi realizada;
|
|
9. Em `Merge options`, marque a opção 'Delete source branch when merge request is accepted'
|
|
8. Em `Merge options`, marque a opção 'Delete source branch when merge request is accepted'
|
|
10. Por fim, revise se todos os arquivos estão corretos, e clique em `Create Merge Request`. |
|
9. Por fim, revise se todos os arquivos estão corretos, e clique em `Create Merge Request`. |
|
|
|
\ No newline at end of file |