# Padrões e Tipos de Branch

No momento utilizamos o padrão de pacotes de branch, ou seja, temos um padrão de nomenclatura de branches apropriado que ajuda na organização, empacotamento, versionamento e entrega das tarefas e do desenvolvimento.

Utilizamos o padrão de [**Conventional Commits**](https://www.conventionalcommits.org/en/v1.0.0/) para a nomenclatura do **intuito** das tarefas de acordo com o tipo de alteração realizada no sistema.

## Branches comuns

As branchs têm de ser criadas com o seguinte padrão:

&lt;intuito-da-tarefa&gt;/&lt;codigo-do-projeto&gt;-&lt;numero-da-tarefa&gt;

Exemplo:

feat/SOL-132  
fix/NEB-532

<p class="callout warning">**Importante** O padrão é **obrigatório**, visto que a aplicação do board só vincula as tarefas às branches que possuem a **nomenclatura** **correta**.</p>

## Branches especiais

Existem algumas branches especiais que têm propósitos específicos.

São essas:

### Branches de Ambiente

- develop - Branch integradora de códigos para o ambiente de desenvolvimento.
- staging - Branch integradora de códigos para o ambiente de homologação.
- prod - Branch integradora de códigos para o ambiente de produção.

### Branches Esporádicas

- release - Branch utilizada para intergrar códigos antes do lançamento de uma versão em algum dos ambientes
- hotfix - Branch utilizada para criar correções rápidas e precisas, saem diretamente da master/main sem precisar de trazer código não finalizado dos outros ambientes