Mudanças entre as edições de "GitFlow"

De Redome
Ir para: navegação, pesquisa
Linha 7: Linha 7:
 
'''Os ramos (branches)'''
 
'''Os ramos (branches)'''
  
Master
+
'''Master'''
  
 
A branch Master é a cópia fiel do sistema em produção, um espelho de todo o sistema que está operando em produção.<br>
 
A branch Master é a cópia fiel do sistema em produção, um espelho de todo o sistema que está operando em produção.<br>
Linha 13: Linha 13:
 
operando normalmente como antes. Só deve existir uma branch Master no projeto, apenas um Fluxo (Flow) de evolução.
 
operando normalmente como antes. Só deve existir uma branch Master no projeto, apenas um Fluxo (Flow) de evolução.
  
Develop
+
'''Develop'''
  
 
A branch Develop é a base de trabalho e desenvolvimento do projeto. A Develop sempre está sincronizada com a Master, sempre.<br>
 
A branch Develop é a base de trabalho e desenvolvimento do projeto. A Develop sempre está sincronizada com a Master, sempre.<br>
Linha 19: Linha 19:
 
só deve existir apenas uma branch Develop, apenas um Fluxo (Flow) de evolução.
 
só deve existir apenas uma branch Develop, apenas um Fluxo (Flow) de evolução.
  
Features
+
'''Features'''
  
 
A branch Features é o conjunto de branches que compõe toda a evolução do projeto. Com base na Develop, toda nova funcionalidade a<br>
 
A branch Features é o conjunto de branches que compõe toda a evolução do projeto. Com base na Develop, toda nova funcionalidade a<br>
Linha 25: Linha 25:
 
Em um mesmo Fluxo Features várias branches de novas funcionalidades podem coexistir simultaneamente. Todas serão “mergeadas” uma a uma para a Develop.
 
Em um mesmo Fluxo Features várias branches de novas funcionalidades podem coexistir simultaneamente. Todas serão “mergeadas” uma a uma para a Develop.
  
Release
+
'''Release'''
  
 
E a branch que controla a versão do sistema. Quando há uma quantidade X de merges das Features com a Develop, um novo Release pode ser criado,<br>
 
E a branch que controla a versão do sistema. Quando há uma quantidade X de merges das Features com a Develop, um novo Release pode ser criado,<br>

Edição das 18h05min de 15 de junho de 2021

Fluxo de trabalho Gitflow

O Git Flow é uma maneira dinâmica e ativa de organização de branches dentro do Git. Com base nessa metodologia,
o Git Flow criou um ferramental para auxiliar esta administração. Ele agrupa um conjunto de comandos dentro de um único comando
o intuito de auxiliar no gerenciamento e na manutenção do repositório.

Os ramos (branches)

Master

A branch Master é a cópia fiel do sistema em produção, um espelho de todo o sistema que está operando em produção.
Em tese, se algo acontece com o sistema de produção, a master deve estar preparada para subir para produção e continuar
operando normalmente como antes. Só deve existir uma branch Master no projeto, apenas um Fluxo (Flow) de evolução.

Develop

A branch Develop é a base de trabalho e desenvolvimento do projeto. A Develop sempre está sincronizada com a Master, sempre.
Todas as novas funcionalidades (Features) e toda a evolução do projeto é feita com base na branch Develop. Assim como a Master,
só deve existir apenas uma branch Develop, apenas um Fluxo (Flow) de evolução.

Features

A branch Features é o conjunto de branches que compõe toda a evolução do projeto. Com base na Develop, toda nova funcionalidade a
ser implementada no sistema é feita pelo Fluxo (Flow) Features. Neste caso, podem existir N branches para este Fluxo (Flow).
Em um mesmo Fluxo Features várias branches de novas funcionalidades podem coexistir simultaneamente. Todas serão “mergeadas” uma a uma para a Develop.

Release

E a branch que controla a versão do sistema. Quando há uma quantidade X de merges das Features com a Develop, um novo Release pode ser criado,
criando uma nova versão para o sistema. Cada arquiteto ou responsável pelo projeto decide quando criar uma nova Release com base no que já foi produzido.
Geralmente é nesta branch que acontecem todos os tipos de testes. Quando um Release é aprovado, ele é “mergeado” com a Master e com a Develop,
para manter a base de desenvolvimento atualizada. Só deve existir apenas uma branch Release, apenas um Fluxo de evolução (Flow).


Fluxo-git.jpeg


Gitflow completo.png