Por que o mesmo conflito reaparece quando uso o git rebase?
Eu li perguntas relevantes sobre git merge e git rebase no SO, mas ainda não consigo entender completamente o que está acontecendo sob o capô.
Aqui está a nossa situação de ramificação:
MASTER------------------------
\ \
\ \----Feature B---
\ \
\-----Feature A----------\---Feature A+B
Temos 2 ramos de recursos que derivam do mestre em momentos diferentes, agora queremos combinar os 2 ramos. Queremos seguir ofirst rebase then merge
prática, mas quando redefinimos o recurso A para o recurso B, obtemos conflitos. Isso é esperado, porque os dois recursos (e mestre) têm alterações nas mesmas áreas. Mas o estranho é que o mesmo conflito continua reaparecendo depoisgit rebase --continue
. Isso nos deixa loucos, então acabamos abortando o rebase e usamosgit merge
. Acontece que os conflitos são realmente fáceis de resolver.
Minha pergunta é dupla:
Égit rebase
adequado para a nossa situação? Ou o rebase é bom apenas para realizar algumas (1 ou 2) alterações?O que está acontecendo sob o capô que faz com que o mesmo conflito reapareça repetidamente? Meu entendimento érebase
resolver conflitos um de cada vez, mas comparando quais comprometimentos com o quê?Publicações relevantes no SO:
Por que tenho que resolver o mesmo conflito repetidamente?Como evitar muitos conflitos de git quando o git rebasing muitos commits?\git rebase resolver conflitos repetidamente?