Article image
Leonardo
Leonardo17/09/2023 21:38
Compartilhe

Git / Merge

  • #Git

Olá, Devs!

Gostaria de compartilhar com vocês um pouco do material que estou montando para o próximo treinamento de Git/Merge.

Trabalhando com Merge

O git merge é um comando fundamental no sistema de controle de versão Git que permite combinar o histórico de dois ramos (branches) diferentes em um único ramo. Isso é útil quando você está trabalhando em um projeto com vários colaboradores ou até mesmo sozinho, mas deseja incorporar as mudanças de um ramo para outro.

Exemplo:

Imagine que você tem um projeto em Git com duas linhas de desenvolvimento diferentes, chamadas "master" e "topic". Aqui está o que acontece quando você executa "git merge topic":

image

Imagine que você tem um projeto em Git com duas linhas de desenvolvimento diferentes, chamadas "master" e "topic". Aqui está o que acontece quando você executa "git merge topic":

  • Primeiro, o Git verifica quando as duas linhas de desenvolvimento, "master" e "topic", começaram a se separar. Isso foi no commit "E".
  • Em seguida, o Git verifica todas as alterações feitas no branch "topic" desde o ponto em que se separou do "master" (ou seja, desde o commit "E") até o commit mais recente no "topic" (que é o commit "C").
  • O Git então pega todas essas mudanças e as incorpora ao branch "master", criando um novo commit que contém essas alterações.
  • Este novo commit terá dois "pais": um é o último commit no "master" (que é o commit "G"), e o outro é o último commit no "topic" (que é o commit "C").
  • Finalmente, o Git também registra uma mensagem de log do usuário para descrever as alterações que foram mescladas.
  • Antes de realizar a operação, o Git salva a referência do estado atual no "ORIG_HEAD".

image

A primeira maneira é usando o comando `git merge --abort` após a mesclagem ter resultado em conflitos. Esse comando irá parar a mesclagem e tentar voltar ao estado que estava antes da mesclagem começar. No entanto, se você fez alterações que não foram salvas antes

de iniciar a mesclagem (e especialmente se você modificou essas alterações após iniciar a mesclagem), o `git merge --abort` pode não ser capaz de restaurar as alterações originais feitas antes da mesclagem.

Aviso: Não é uma boa ideia usar o comando git merge quando você fez alterações significativas que ainda não foram confirmadas. Embora seja possível, isso pode causar problemas difíceis de corrigir caso ocorra algum conflito.

O comando ("git merge --continue") só funciona quando você já tentou mesclar e encontrou conflitos no processo.

Compartilhe
Comentários (2)

SS

SIDNEY SILVA - 18/09/2023 12:12

Parabéns pelo artigo


Contribuindo para nosso forum

git merge --abort é equivalente a git reset --merge quando MERGE_HEAD esta ativo, a menos que MERGE_AUTOSTASH também ativo, o git merge --abort entrada na stash à árvore de trabalho enquanto git reset --merge salvará as alterações armazenadas no arquivo lista estocada.

Cleiton Santos
Cleiton Santos - 18/09/2023 11:07

Boa!