Como Implementar o GitFlow no Git e GitHub (Somente para Windows)

Para implementar o GitFlow no Windows, você precisa seguir alguns passos específicos, desde a instalação do GitFlow até a configuração e uso em seu repositório Git. A seguir, explicamos como realizar isso:

1. Instalando o Git no Windows

Caso ainda não tenha o Git instalado, o primeiro passo é baixar e instalar o Git para Windows. Acesse o site oficial do Git e baixe a versão mais recente. Durante a instalação, é importante selecionar a opção para adicionar o Git ao PATH, para que você possa usá-lo diretamente no terminal do Windows.

2. Instalando o GitFlow no Windows

O GitFlow não é instalado automaticamente com o Git para Windows. Para instalar o GitFlow no Windows, siga os passos abaixo:

  1. Baixe o GitFlow para Windows: A maneira mais simples de instalar o GitFlow no Windows é utilizando o Git Bash, que já vem com o Git para Windows.

  2. Baixar e instalar o GitFlow: No Git Bash, execute o comando para instalar o GitFlow:

  • Abra o Git Bash no seu computador.
  • Execute o seguinte comando para baixar e instalar o GitFlow:
git clone https://github.com/nvie/gitflow.git
cd gitflow
make install

3. Inicializando o GitFlow

Após a instalação do GitFlow, você precisa inicializar o GitFlow em seu repositório Git. Para isso:

  1. No Git Bash, navegue até a pasta do seu projeto, onde o repositório Git está localizado. Se você ainda não inicializou o repositório, execute:
git init
  1. Agora, inicialize o GitFlow com o comando:
git flow init

Você será solicitado a configurar os nomes dos branches. As opções padrão são:

  • Branch principal: master (ou main)
  • Branch de desenvolvimento: develop

Pressione Enter para aceitar as configurações padrão ou insira seus próprios nomes de branches, se desejar.

4. Criando Branches de Funcionalidades (feature)

Após a configuração inicial, você pode começar a criar branches de funcionalidades (feature). Para iniciar o desenvolvimento de uma nova funcionalidade, use o seguinte comando:

git flow feature start nome-da-feature

Isso criará um novo branch feature/nome-da-feature baseado no develop. Quando a funcionalidade estiver concluída, finalize o branch com:

git flow feature finish nome-da-feature

Isso mesclará o branch de funcionalidade de volta ao develop e excluirá o branch feature.

5. Criando Branches de Lançamento (release)

Quando as funcionalidades estiverem prontas para serem lançadas, crie um branch release a partir do develop com:

git flow release start v1.0.0

Esse comando criará um branch release/v1.0.0. Após realizar os ajustes finais, finalize o release com:

git flow release finish v1.0.0

Isso mesclará o release tanto na main quanto no develop, criando uma nova versão estável na main e excluindo o branch release.

6. Criando Branches de Correção (hotfix)

Se houver um bug crítico em produção, você pode criar um branch hotfix a partir da main:

git flow hotfix start v1.0.1

Após corrigir o problema, finalize o hotfix com:

git flow hotfix finish v1.0.1

Isso mesclará o hotfix de volta na main e no develop, garantindo que a correção seja aplicada a ambas as versões.

7. Subindo as Alterações para o GitHub

Sempre que você criar ou finalizar um branch de funcionalidade, release ou hotfix, é importante enviar suas alterações para o repositório remoto no GitHub. Para isso, use os seguintes comandos:

  1. Para o branch main e develop:
git push origin main
git push origin develop
  1. Para branches feature, releas ou hotfix, use:
git push origin feature/nome-da-feature
git push origin release/v1.0.0
git push origin hotfix/v1.0.1

8. Gerenciando Pull Requests no GitHub

Ao trabalhar com o GitFlow, é uma boa prática criar Pull Requests (PRs) no GitHub para integrar as mudanças dos branches feature, release e hotfix ao develop ou main. Isso ajuda a revisar o código e garantir que as alterações sejam bem integradas.