Introducción
El restablecimiento de Git es un proceso bastante similar a deshacer la confirmación de Git reciente de la que hablamos en uno de los tutoriales anteriores. Sin embargo, en este, cubriremos el restablecimiento de Git a Head con más profundidad. Comprobaremos qué hace el comando revertir y qué es la restauración mixta. Siga leyendo y encuentre algunos consejos y trucos para restablecer Git.
Restablecer la última confirmación de Git en HEAD
¿Qué hacer cuando desea revertir la última confirmación de Git a HEAD, mantener los cambios realizados en el directorio del repositorio, pero no desea mantenerlos en el índice? Aquí tienes tu respuesta.
Si se encuentra con situaciones como la que describimos anteriormente, debe usar la marca –mixed . Aquí hay un ejemplo.
Digamos que agregamos algún tipo de archivo con nuestra última confirmación:
git log --oneline --graph
d445900 (HEAD -> master) Added a new file named "test_file"
61t6ll5 Second commit
4096r12 Initial repository commit
Ahora ejecutemos el comando de reinicio de Git con la bandera --mixed
:
git reset --mixed HEAD~1
Lo que hizo el comando anterior es el siguiente. Eliminó la última confirmación, que en este caso estaba agregando archivos, y la eliminó del índice de Git, pero el archivo permaneció en el directorio en el que se encuentra actualmente (que es su directorio de repositorio local). Entonces, flag --mixed
es en realidad una combinación de Git --soft
y --hard
. Es por eso que en última instancia se le llama mixto.
Cómo usar la opción Git Revert para restaurar
Revertir es ligeramente diferente de revertir. La principal diferencia es que el restablecimiento establece una nueva ubicación para HEAD, mientras que revert realmente restaura toda la confirmación especificada. Permítanos mostrarle un ejemplo de cómo funciona realmente:
git log --oneline --graph
d445900 (HEAD -> master) Added a new file named "test_file"
61t6ll5 Second commit
4096r12 Initial repository commit
De nuevo, lo último que hicimos fue agregar archivos. Ejecutemos ahora el comando revertir:
git revert HEAD
Su editor de texto predeterminado se abrirá ahora y la salida se verá así:
Revert “Added a new file named test_file”
This reverts commit 5e998t74du5h4z4f.
# Please enter the commit message for your changes. Lines starting
# with ‘#’ will be ignored, and an empty message aborts the commit.
#
# On branch master
# Your branch is ahead of ‘origin/master’ by 6 commits.
# (use “git push” to publish your loacl commits)
#
# Changes to be committed:
# deleted: test_file
#
Cuando termine, salga del editor de texto y aparecerá un nuevo mensaje.
[master d445900] Revert "Added a new file named test_file"
1 file changed, 1 deletion(-)
delete mode 100644 test_file
Conclusión
¡Eso es todo! Ha completado con éxito la acción de reversión de Git en HEAD con la opción de restauración.