Guia Prático do Gitflow
O que é Gitflow?
O Git Flow é um modelo de ramificação que estabelece padrões específicos para o fluxo de trabalho do Git. Ele organiza as branches em categorias distintas, cada uma com um propósito claro, desde o desenvolvimento de novas funcionalidades até a produção de versões estáveis.
Por que usar o GitFlow?
-
Organização:
- Estrutura as branches para melhor acompanhamento do desenvolvimento.
-
Versões Controladas:
- Permite a criação de releases estáveis a partir da branch
master
.
- Permite a criação de releases estáveis a partir da branch
-
Integração Contínua:
- A branch
develop
serve como ponto central para integração contínua de funcionalidades.
- A branch
-
Isolamento de Funcionalidades:
- Cada funcionalidade é desenvolvida em sua própria branch, evitando conflitos desnecessários.
Quando Utilizar o Git Flow?
O Git Flow é especialmente útil em projetos onde:
- O desenvolvimento é feito por equipes colaborativas.
- É necessário manter versões estáveis e em produção.
- Deseja-se ter um controle mais preciso sobre o ciclo de vida das funcionalidades.
Como Funciona o Git Flow?
O Git Flow organiza o fluxo de trabalho em diferentes tipos de branches, cada uma com uma função específica. Os principais tipos de branches são:
Branch Master/Main
- Propósito: Representa a versão estável e produzida do software.
- Criação: Criada a partir da
develop
quando uma versão está pronta para ser lançada. - Mesclagem: Recebe merges de branches
release
ehotfix
.
Branch Develop
- Propósito: Ramificação principal para integração contínua.
- Criação: Criada a partir da
master/main
. - Mesclagem: Recebe merges de branches
feature
erelease
.
Branch Feature
- Propósito: Desenvolvimento de uma nova funcionalidade.
- Criação: Criada a partir da
develop
. - Mesclagem: Mesclada de volta à
develop
após a conclusão.
Branch Release
- Propósito: Preparação do software para um novo lançamento.
- Criação: Criada a partir da
develop
. - Mesclagem: Mesclada de volta à
master/main
edevelop
.
Como o GitFlow se Aplica ao Hackathon?
-
Simplicidade:
- O GitFlow mantém um fluxo de trabalho simples, priorizando a entrega rápida.
-
Versões Controladas:
- Permite a criação de versões incrementais durante o hackathon.
-
Colaboração Eficiente:
- Podemos nos concentrar em funcionalidades específicas sem conflitos constantes.