Deshacer el último commit en Git

Abdul Jabbar 30 enero 2023
  1. Deshacer el último commit en Git (versión larga)
  2. Deshacer el último commit en Git (versión corta)
Deshacer el último commit en Git

Mientras trabajamos con Git, nos enfrentamos a varias situaciones en las que deliberadamente queremos deshacer el último commit porque nos gustaría volver a confirmarla extensamente o incluso eliminarla por completo debido a errores que cometimos en el pasado. Solo piense cuántas personas más usarían Git si tuviera opciones simples de Deshacer último commit o incluso un atajo de teclado que sería la característica más popular.

Tenemos un comando directo y poderoso que hace lo mismo que se discutió anteriormente. Ese comando es realmente poderoso, ya que descarta el último commit y restaura HEAD (la rama actual) al estado que tenía antes de que se realizara el último commit en ese repositorio. Puede ser algo confuso para los nuevos usuarios de Git, pero una vez que lo tengamos en nuestras manos, será muy fácil para nuestra caja de herramientas Git.

Deshacer el último commit en Git (versión larga)

Primero, abra la terminal deseada y ejecute el estado Git. Esto nos mostrará el estado de nuestro repositorio, incluida la lista de todas los commits que hemos realizado. La mayoría de las veces, dice que hay tres commits.

El primero es un commit con una rama llamada master, que es la rama en la que estamos actualmente en el repositorio. El segundo es un commit con una nueva rama llamada Dev, y finalmente, el tercero es un commit con otra rama llamada NewDev.

Los dos últimos son interesantes, ya que son los que queremos deshacer. Queremos descartar el commit que hemos realizado para Dev y NewDev y restaurar HEAD al estado que tenía antes de realizar esos commits. Ejecutemos el siguiente comando y veamos qué sucede después de eso:

$ git reset --hard 

HEAD está ahora en el estado anterior donde estaba anteriormente. Como podemos ver, el nuevo puntero HEAD ahora vuelve a la siguiente commit. Tenga en cuenta que ya no hay un commit marcada como Dev. Además, el commit marcada como NewDev ha vuelto al next commit.

Deshacer el último commit en Git (versión corta)

Si queremos deshacer el último commit, asegúrese de que estamos en la rama de la que queremos deshacer el commit, luego ejecute git reset –hard. Si queremos deshacer el último commit en la rama actual, asegúrese de que estamos en master, luego ejecute el siguiente comando.

git reset --hard origin/master.  

Los procedimientos mencionados anteriormente solo se pueden aplicar cuando estamos completamente seguros de que ya no necesitamos estos cambios. Pero a la inversa, si necesitamos estos cambios como cambios locales no commits en nuestra copia de trabajo, entonces para este caso, el comando reset es nuestra solución para este problema:

$ git reset --soft HEAD~1

reset deshará nuestra rama HEAD actual a un punto específico. En nuestro ejemplo mencionado anteriormente, estamos ordenando volver a el último commit antes del deshacer reciente, creando de manera beneficiosa nuestra última confirmación no realizada. El indicador --soft garantiza que se restablezcan los cambios en las revisiones deshechas.

Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn

Artículo relacionado - Git Commit