Loading…

Tutorial GIT – Parte 2

Escrito por Ygo.

Neste mini tutorial serão abordados os temas Branch, Merge e Resolução de Conflitos.

Alguns Conceitos

Branches ou ramos: São utilizados para desenvolver funcionalidades isoladas umas das outras. O branch master é o branch “padrão”, quando você cria um repositório. Use outros branches para desenvolver e mescle-os (merge) ao branch master, após a conclusão.

Git

Fork: É uma cópia do projeto existente para seguir em uma nova direção de desenvolvimento.

Merge: É a capacidade de incorporar alterações do git, onde acontece a junção dos branches.

Praticando

Para visualizar os branches utilizados no projeto e o branch selecionado para o desenvolvimento, utilizamos o seguinte comando:

Para criar um branch novo, basta utilizar:

Para selecionar o branch recém criado, utilizamos:

Obs.: Note que o git fez um “clone” do branch atual para o novoRamo.

Após realizar modificações em seu(s) arquivo(s), faça o commit (veja como commitar aqui).
Obs.: Os commits realizados no branch novoRamo não serão visíveis nos outros ramos

Após as alterações realizadas no novoRamo serem testadas e aprovadas, provavelmente será necessário “mesclar” o conteúdo do branch novoRamo ao branch master. Para realizar esta “mesclagem” (merge), selecione o branch master previamente com o comando:

Após estar com o branch master selecionado, utilize o comando:

 

Resolução de conflitos

Caso o seu merge ocorra sem nenhum problema, o git apresentará uma mensagem com estrutura semelhante à esta:

Caso o merge automático não ocorra como esperado, que é quando o git não consegue “mesclar” os branches, uma mensagem de conflito é apresentada:

Para corrigir esse conflito, é necessário utilizar uma ferramenta que nos mostrará as diferenças entre os arquivos para a correção manual. Abrimos essa ferramenta com o comando:

Se o git informar que não possui uma ferramenta de mesclagem configurada e listar as ferramentas compatíveis, será necessário instalar uma ferramenta desta lista. Neste tutorial, escolhemos instalar a ferramenta Meld:

Após instalar a ferramenta de mesclagem, é necessário informar ao git que esta ferramenta é a default para resolução de conflitos. Para configurar esta ferramenta, utilizamos o comando:

Após configurar a ferramenta (se necessário), utilizamos novamente o comando:

O git perguntará se deseja alterar o arquivo no repositório local ou remoto, informamos local como opção:

O Meld abrirá com 3 arquivos, são eles:

  • Arquivo da esquerda: arquivo conflitante contido em uma das branches selecionadas para a mesclagem.
  • Arquivo da direita: arquivo conflitante contido em uma das branches selecionadas para a mesclagem.
  • Arquivo do meio:  arquivo resultante da mesclagem (merge) conflitante.

Para corrigirmos o conflito, selecionamos os trechos  dos arquivos da esquerda e direita, que devem estar no arquivo resultante, e inserimos no arquivo do meio. Após terminar a edição do arquivo resultante (arquivo do meio), clique em “salvar”. Agora, terá seu arquivo correto na branch master, basta commitar ele.

Obs.: Caso deseje remover sua branch novoRamo, utilize:

 

Material de apoio:
Guia Descomplicado GIT
Git – guia prático
Git – Book (pt-br)