Rollback en Git

En algunas ocasiones realizamos un commit sin querer y podemos deshacer los cambios manual sin embargo analicemos una situación en la que hemos modificado muchos archivos y estar verificando las diferencias entre archivos va ser tedioso bueno Git nos brinda la posibilidad de hacer un rollback a un commit determinado y hoy vamos aprender a realizarlo.

En mi caso realizaré el ejemplo con un repositorio hospedado en GitHub sin embargo aplica para cualquier repositorio que funcione con Git para el control de versiones.

Vamos a observar que el último commit yo lo realicé sin embargo quiero volver a un commit anterior para eliminar los cambios y modificar otro archivo ya que cometí un error

Screen Shot 2016-04-04 at 19.38.45

Acá adjunto la lista de los últimos commits para que se aprecie mejor

Screen Shot 2016-04-04 at 19.39.04

Nota: Si desean ver el historial pueden digitar “git log”

Ahora manos a la obra, lo primero es conocer el id del commit al que deseamos regresar en mi caso será el e87ffda458a3953d61726b3cfe03cecb151df753, una vez que lo tenemos vamos a navegar a nuestro directorio desde la linea de comandos y vamos a digitar las siguientes instrucciones


git reset --hard id_commit

Ejemplo


git reset --hard e87ffda458a3953d61726b3cfe03cecb151df753

Lo que le estamos diciendo a Git es que descarte todos los cambios del espacio de trabajo que se han realizado después del commit especificado

Ahora vamos a observar los commits que tiene el repositorio, en mi caso realizaré un push al repositorio remoto para poder apreciar mejor el historial

Nota: En algunas ocasiones si no les funciona el push deben de forzarlo con el parámetro -f, por ejemplo “git push -f”

Screen Shot 2016-04-04 at 19.39.37

Como podemos apreciar ya no está el commit que yo realicé y ahora podemos seguir trabajando, hasta la próxima 🙂

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s