Hay ciertas ocasiones en las que Git Rebase generará docenas o cientos de conflictos con la rama Upstream, haciendo muy difícil gestionar manualmente cada uno de estos conflictos. Si sabes de antemano que tu rama local contiene código más actualizado que la rama remota, puedes anular automáticamente todos estos conflictos manteniendo el código de la rama actual como preferible en caso de conflicto. Lo contrario también es posible si desea utilizar el código de la rama ascendente como siempre preferible en caso de conflicto. Este artículo pretende enseñarte cómo sobrescribir todos estos conflictos automáticamente.
Ejemplos de Git Rebase -Xtheirs y Git Rebase -Xours
En nuestro ejemplo, supongamos que estamos utilizando la rama «feature-A» y queremos hacer un rebase con la rama «feature-B».
Cuando prefieras mantener siempre los cambios de la rama actual contra la rama ascendente en caso de conflicto, usarás Git Rebase con el parámetro -Xtheirs:
git rebase -Xtheirs feature-B
# O comando acima irá preferir as alterações da "feature-A" durante qualquer conflito com "feature-B".
Lo contrario también es posible. Cuando quieras dar preferencia a los cambios de la Rama ascendente sobre la Rama local en caso de conflicto, utiliza:
git rebase -Xours feature-B
# O comando acima irá preferir as alterações da "feature-B" durante qualquer conflito com "feature-A".