Descubrí que la solución que mejor funciona para mí es simplemente realizar la fusión y abortarla si hay conflictos . Esta sintaxis particular me parece limpia y simple. Esta es la estrategia 2 a continuación.
Sin embargo, si desea asegurarse de no estropear su rama actual, o simplemente no está listo para fusionarse, independientemente de la existencia de conflictos, simplemente cree una nueva sub-rama y fusione eso:
Estrategia 1: La forma segura: fusionar una rama temporal:
git checkout mybranch
git checkout -b mynew-temporary-branch
git merge some-other-branch
De esa manera, simplemente puede tirar la rama temporal si solo quiere ver cuáles son los conflictos. No necesita molestarse en "abortar" la fusión, y puede volver a su trabajo: simplemente vuelva a pagar 'mybranch' y no tendrá ningún código fusionado o conflictos de fusión en su sucursal.
Esto es básicamente una carrera en seco.
Estrategia 2: cuando definitivamente quieres unirte, pero solo si no hay conflictos
git checkout mybranch
git merge some-other-branch
Si git informa conflictos (y SOLO SI HAY conflictos), puede hacer lo siguiente:
git merge --abort
Si la fusión es exitosa, no puede cancelarla (solo restablecer).
Si no está listo para fusionarse, use la forma más segura anterior.
[EDITAR: 2016-noviembre - Cambié la estrategia 1 por 2, porque parece ser que la mayoría de la gente está buscando "la forma segura". La Estrategia 2 ahora es más una nota de que simplemente puede abortar la fusión si la fusión tiene conflictos con los que no está listo para lidiar. ¡Tenga en cuenta si lee los comentarios!]
git merge
ygit reset --keep HEAD@{1}
si no me gusta el resultado.