Middle
Qual é a diferença entre rebase e merge?
sobes.tech IA
Resposta da IA
merge integra as alterações de um ramo em outro criando um novo commit de fusão que regista o facto de união. A história mantém-se linear, pode-se ver quando e de onde foram retiradas as alterações.
rebase transfere as alterações de um ramo para o topo de outro, criando uma nova sequência de commits. A história parece mais limpa e linear, como se as alterações sempre tivessem ocorrido sobre o ramo de destino, mas os commits originais são modificados.
merge |
rebase |
|
|---|---|---|
| História | Mantém-se não linear, é visível o commit de fusão | Torna-se linear, os commits são reescritos |
| Limpeza | Há um commit de fusão | A história é limpa, sem commits de fusão |
| Alteração de commits | Não altera os commits existentes | Reescreve os commits |
| Utilização | Para integrar ramos, ramos públicos | Para limpar a história do ramo local antes de fazer a fusão |