mesclar uma filial local em outra filial local

167

Eu tenho vários ramos que são ramificados do mestre (cada um em um subdiretório separado).

  • Branch1: novo desenvolvimento, ainda não completamente concluído
  • Branch2: hotfix para um problema, mas ainda em teste
  • Branch3: mexer com o branch, que não restaurarei

Antes de concluir o teste do hotfix, eu gostaria de ter o código já disponível no Branch1, para que eu possa continuar desenvolvendo com a correção no local.
(Mas como minha experiência com o git não é muito, comecei a brincar com a mesclagem em um terceiro ramo, criado especialmente para mexer, antes de estragar o Branch1 ou o Branch2)

No meu terceiro ramo, tentei o seguinte:

git merge feature/Branch1

mas isso deu o seguinte erro:

fatal: 'feature/Branch1' does not point to a commit

Em seguida, fiz um commit -a no meu Branch1 e tentei novamente, mas ele continua dando o mesmo erro.

O que estou fazendo de errado? O que devo fazer para mesclar o código - neste caso - Branch1 com Branch3?

Nemelis
fonte

Respostas:

236

Primeiro, faça o checkout no seu Branch3:

git checkout Branch3

Em seguida, mesclar o Branch1:

git merge Branch1

E se você deseja os commits atualizados do Branch1 no Branch2, provavelmente está procurando git rebase

git checkout Branch2
git rebase Branch1

Isso atualizará o seu Branch2 com as atualizações mais recentes do Branch1.

gabra
fonte
1
(Quero as atualizações do Branch2 para o Branch1 ;-)) O Branch2 vê o Branch1, mas não o contrário quando eu faço um branch do git -a nos dois branches. Por isso eu não posso fazer um rebase para Branch2 em Branch1: rebase git Branch2 -> fatal: Necessário uma única revisão
Nemelis
Quando eu fazer o rebase como origem git rebase / Branch2 ainda dá essa origem a montante mensagem de erro + inválido / Branch2
Nemelis
1
@ Si8 isso adicionará apenas as confirmações da Filial1 à Filial3. O ramo1 será mantido como está.
Gabra
1
Obrigado, se atualmente estou no ramo Dev e faço uma mesclagem de Dev1, ele mesclará Dev1 a Dev, estou correto?
Si8
1
Sim. Eu recomendo tentar. Se algo quebrar, você pode voltar. Esse é o objetivo de um VCS.
Gabra