¿Cómo deshacer un git pull?

Resuelto Kartins asked hace 13 años • 8 respuestas

Me gustaría deshacer mi git pull debido a confirmaciones no deseadas en el origen remoto, pero no sé a qué revisión tengo que restablecer.

¿Cómo puedo volver al estado anterior a git pull en el origen remoto?

Kartins avatar Apr 28 '11 14:04 Kartins
Aceptado

O para hacerlo más explícito que la otra respuesta:

git pull 

ups?

git reset --keep HEAD@{1}

Las versiones de git anteriores a 1.7.1 no tienen --keep. Si usa dicha versión, podría usarla --hard, pero es una operación peligrosa porque pierde todos 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: HEAD@{1} es aproximadamente equivalente a ORIG_HEAD (HEAD@{1} es siempre el último valor de HEAD, ORIG_HEAD es el último valor de HEAD antes de una operación peligrosa)

sehe avatar Apr 28 '2011 08:04 sehe

git reflog showdebería mostrarte la historia de HEAD. Puedes usarlo para averiguar dónde estabas antes del pull. Entonces puedes resetcomprometerte HEADcon ese compromiso.

Noufal Ibrahim avatar Apr 28 '2011 08:04 Noufal Ibrahim

Esto funcionó para mí.

git reset --hard ORIG_HEAD 

Deshacer una fusió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.

Parag Tyagi avatar Sep 01 '2015 14:09 Parag Tyagi