version-control mercurial merge dvcs undo

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:

  1. 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.

  2. 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 en hg merge -time que sus herramientas de fusión están mal configuradas: corrija la configuración y ejecute hg resolve --all . Puede ejecutar hg resolve tantas veces como quiera hasta que esté satisfecho con la fusión.


hg update -C <one of the two merge changesets>