Cairo Noleto

Diferença entre git merge e git rebase

| Comments

Olá, há alguns dias tive muitos problemas de conflitos ao usar o git, quando ia unir dois branchs. Sempre tinha um ou outro arquivo com conflito.

Então postei a minha dúvida na lista git-br e na do rails-br, então no rails-br me indicaram a usar o rebase ao invés do merge, com o rebase, diminuiu e muito a quantidade de conflitos.

Agora, qual a diferença entre o git merge e o git rebase? Eis a resposta ;)

Ao se fazer um git rebase se faz a união de dois branchs mas mantendo o histórico de commits:

Git Rebase

Enquanto que o merge apenas une os dois branchs e desconsidera o histórico:

Git merge

Fazendo assim, o rebase mantem um histórico maior, assim gerando menos conflitos.

Por um lado, isso aumenta o número de commits e patchs por outro lado diminui bastante o índice de conflitos já que ele segue uma cronologia entre os branchs.

Eu prefiro manter o histórico de revisões é bem mais fácil de gerenciar.

Até a próxima!

Comments