Solución:
O para hacerlo más explícito que la otra respuesta:
git pull
¡Ups!
git reset --keep [email protected]{1}
Las versiones de git anteriores a la 1.7.1 no tienen --keep
. Si usa dicha versión, podría usar --hard
– pero esa es una operación peligrosa porque pierde los cambios locales.
Al comentarista
ORIG_HEAD es el estado anterior de HEAD, establecido por comandos que tienen un comportamiento posiblemente peligroso, para que sea fácil revertirlos. Es menos útil ahora que Git tiene reflog: [email protected]{1} es aproximadamente equivalente a ORIG_HEAD ([email protected]{1} es siempre el último valor de HEAD, ORIG_HEAD es el último valor de HEAD antes de la operación peligrosa)
git reflog show
debería mostrarte la historia de HEAD. Puede usar eso para averiguar dónde estaba antes del pull
. Entonces tú puedes reset
tu HEAD
a ese compromiso.
Esto funcionó para mí.
git reset --hard ORIG_HEAD
Deshacer una combinación o extracción:
$ git pull (1)
Auto-merging nitfol
CONFLICT (content): Merge conflict in nitfol
Automatic merge failed; fix conflicts and then commit the result.
$ git reset --hard (2)
$ git pull . topic/branch (3)
Updating from 41223... to 13134...
Fast-forward
$ git reset --hard ORIG_HEAD (4)
Consulte esto: HEAD y ORIG_HEAD en Git para obtener más información.