Rebase mais complexo de commits no Git
No sistema Git, é possível executar um rebase
para três ramificações. Vamos supor que temos dois branches
member1 e member2, que possuem commits
diferentes.
Durante o trabalho no projeto, precisamos
inserir os commits commit3, commit4
do branch member2 no branch member1
e aplicá-los no branch master.
Para fazer isso, executamos o seguinte
comando:
git rebase --onto master member1 member2
Este comando instrui o sistema Git a
mudar para o branch member2,
encontrar nele os commits que não estão no branch member1
e fazer o merge apenas desses commits faltantes com
o branch master.
Agora, vamos executar um merge de avanço rápido (fast-forward):
git switch master
git merge member2
É importante lembrar que não é possível fazer rebase de commits que estão em um repositório externo. Todos os membros da equipe obtêm deles os commits para executar suas tarefas, mas se ocorrer um rebase dos branches, todos os participantes terão que fazer o merge dos commits com seus branches novamente, o que pode causar confusão adicional.