Home | Sprints | Requisitos | Processos | Arquitetura | Configuração | Mockups | Banco de Dados | Git |
---|
📌 Controle de Versionamento
🔀 Estratégia de Branches
Branches Principais
-
main
(protegida)- Representa o código em produção
-
❗ Commits diretos são bloqueados - Atualizada apenas via merge de
develop
(deploys) ouhotfix/
-
develop
- Branch de integração para novas funcionalidades
- Recebe merges das feature branches
Branches de Trabalho
-
feature/JIRA-123-descricao
- Padrão:
feature/
+ código do JIRA + descrição breve - Exemplo:
feature/codjira-cadastro
- Criada a partir da
develop
- Padrão:
-
hotfix/JIRA-123
- Para correções urgentes em produção
- Criada a partir da
main
🔁 Fluxo Resumido
Papéis e Comandos
Desenvolvedores (Criando e Finalizando Features)
- Criar uma nova branch de feature a partir de
develop
:git checkout develop git pull origin develop git checkout -b feature/nome-da-feature
- Desenvolver a funcionalidade e realizar commits:
git add . git commit -m "codjira:breve-descricao"
- Enviar a feature para o repositório remoto:
git push origin feature/nome-feature
- Criar um Pull Request (PR) para mesclar a feature em
develop
.
Revisores (Revisão e Merge para Develop)
- Revisar o Pull Request e, se aprovado, fazer o merge da
feature/nome-da-feature
emdevelop
. - Após o merge, deletar a branch da feature no repositório remoto:
git branch -d feature/nome-da-feature git push origin --delete feature/nome-da-feature
Gestores de Release (Criando e Finalizando uma Release) (baseado em git flow, manter ou tirar se quiserem)
- Criar uma branch de release a partir de
develop
:git checkout develop git pull origin develop git checkout -b release/x.y.z
- Realizar os últimos ajustes e commits.
- Criar um Pull Request para mesclar a release em
main
. - Após aprovação, fazer o merge para
main
e criar uma tag:git checkout main git merge --no-ff release/x.y.z git tag -a vX.Y.Z -m "Versão X.Y.Z" git push origin main --tags
- Mesclar a release de volta para
develop
:git checkout develop git merge --no-ff main git push origin develop
- Excluir a branch de release:
git branch -d release/x.y.z git push origin --delete release/x.y.z
Correções Críticas (Hotfixes) (também baseado em git flow, manter ou deixar mais simples)
- Criar uma branch de hotfix a partir de
main
:git checkout main git pull origin main git checkout -b hotfix/x.y.z
- Implementar a correção e commitar:
git add . git commit -m "Corrige problema crítico X"
- Criar um Pull Request para merge em
main
. - Após o merge, criar uma tag e enviar:
git tag -a vX.Y.Z-hotfix -m "Hotfix X.Y.Z" git push origin main --tags
- Mesclar o hotfix em
develop
:git checkout develop git merge --no-ff main git push origin develop
- Excluir a branch de hotfix:
git branch -d hotfix/x.y.z git push origin --delete hotfix/x.y.z
Considerações Finais
- Sempre crie branches de feature a partir de
develop
. - Releases devem ser testadas antes de serem finalizadas.
- Hotfixes devem ser feitos apenas para problemas críticos.
- Todos os Pull Requests devem ser revisados antes de merge.