Junior — Middle
Quais são as diferenças entre os comandos 'git merge' e 'git rebase' ao integrar alterações em um branch?
sobes.tech IA
Resposta da IA
Os comandos git merge e git rebase são ambos usados para integrar alterações de um branch para outro, mas funcionam de maneiras diferentes:
-
git merge cria um novo commit de fusão que une as histórias de ambos os branches. A história é mantida como um ramo, permitindo ver quando e como a fusão ocorreu.
-
git rebase transfere (reescreve) os commits do branch atual sobre outro branch, criando uma história linear sem commits de fusão. Isso simplifica a história, mas altera os hashes dos commits, o que pode causar dificuldades na colaboração.
Exemplo:
# merge
git checkout feature
git merge main
# rebase
git checkout feature
git rebase main
A escolha depende das preferências da equipe: merge mantém toda a história, rebase a torna mais limpa e linear.