version control - ¿Cómo abortar una fusión en mercurial?
version-control merge (2)
Me metí en una fusión. Me gustaría revertir y luego volver a intentarlo.
¿Hay alguna manera de revertir una fusión antes de que se haya cometido?
hg revert
no hace lo que me gustaría, solo revierte el texto de los archivos. Mercurial aborta mi segundo intento de fusión y se queja de que la fusión original todavía no está comprometida.
¿Hay alguna forma de deshacer una fusión después de un comando de hg merge
pero antes de que se haya cometido?
Después de hg merge
, pero antes de hg commit
, su copia de trabajo tiene dos padres: el primer padre es el conjunto de cambios que había actualizado antes de la fusión y el segundo padre es el conjunto de cambios con el que se está fusionando. Mercurial no le permitirá hg merge
nuevo siempre que su copia de trabajo tenga dos padres.
Usted tiene dos opciones sobre cómo proceder:
Si desea abortar la fusión y volver al punto de partida, haga
hg update -C .
Esto actualizará la copia de trabajo para que coincida con el primer padre: el
.
siempre denota el primer padre de la copia de trabajo.Si desea volver a fusionar algunos archivos, haga
hg resolve fileA fileB
Esto relanzará las herramientas de fusión al igual que cuando hiciste
hg merge
. El comando de resolución es bueno si descubre enhg merge
-time que sus herramientas de fusión están mal configuradas: corrija la configuración y ejecutehg resolve --all
. Puede ejecutarhg resolve
tantas veces como quiera hasta que esté satisfecho con la fusión.
hg update -C <one of the two merge changesets>