Revertir Cambios antes de Preparar
A veces, puedes encontrarte en una situación en la que has hecho modificaciones en tu árbol de trabajo pero quieres descartar esos cambios antes incluso de que sean establecidos. Exploremos ahora técnicas para revertir cambios en Git antes de que sean añadidos al área de preparación.
Descartando cambios con git restore
El comando git restore
es una herramienta versátil para descartar cambios en tu árbol de trabajo. Para revertir cambios en archivos modificados antes de la puesta en escena, puedes usar este comando de la siguiente manera:
Donde <archivo>
es el nombre de los archivos o su ruta relativa al directorio del proyecto. Este comando revierte el archivo especificado a la versión que está establecida. Si el área de preparación está vacía, revierte el fichero a la versión de la última confirmación.
Revertir a la versión por etapas
Primero vamos a crear un nuevo fichero llamado recipe.txt
que contendrá una simple receta para huevos cocidos usando el comando echo
:
Ahora añadiremos este archivo y lo modificaremos añadiéndole otra línea con otro paso de nuestra receta:
Ups, parece que hemos utilizado el operador incorrecto, concretamente >
(que sobrescribe el fichero) en lugar de >>
(que añade una nueva línea al final del fichero). Antes de tomar cualquier medida para solucionarlo, deberíamos comprobar el estado de nuestro árbol de trabajo y del área de preparación:
Como puede ver, nuestra versión inicial del archivo está establecida, así que vamos a revertir nuestro archivo a esta versión y comprobar de nuevo el estado de nuestro árbol de trabajo y del área de ensayo:
Como puede ver, nuestro árbol de trabajo está ahora limpio, por lo que los cambios se deshicieron, y el archivo se revirtió a la versión staged.
![Creating and staging the file](https://codefinity-content-media-v2.s3.eu-west-1.amazonaws.com/courses/7533d91f-0a23-44a3-afc7-c84d5072e189/section_3/chapter_1/staging_before_reverting.png)
![Reverting to staged version](https://codefinity-content-media-v2.s3.eu-west-1.amazonaws.com/courses/7533d91f-0a23-44a3-afc7-c84d5072e189/section_3/chapter_1/reverting_to_staged_illustration.png)
Revertir a la última confirmación
En primer lugar, debemos confirmar la creación de nuestro archivo recipe.txt
:
El commit se ha realizado correctamente. Ahora, volvamos a otra línea al fichero con otro paso de nuestra receta y comprobemos el estado del árbol de trabajo:
Oops, cometimos otro error aquí. El paso que hemos añadido debería estar en el número 7, no en el 10. No te preocupes, podemos revertir este cambio en nuestro último commit. Revisemos el último commit:
Este commit es exactamente lo que necesitamos, así que ahora podemos restaurar los cambios a esta versión y verificar que nuestro árbol de trabajo está realmente limpio:
Nuestro árbol de trabajo está limpio, lo que significa que nuestros cambios fueron deshechos, y el archivo fue restaurado a la versión del último commit.
![Reverting to the latest commit](https://codefinity-content-media-v2.s3.eu-west-1.amazonaws.com/courses/7533d91f-0a23-44a3-afc7-c84d5072e189/section_3/chapter_1/reverting_to_commit_illustration.png)
¿Todo estuvo claro?
Contenido del Curso
Git Essentials
1. Introducción a Git
Git Essentials
Revertir Cambios antes de Preparar
A veces, puedes encontrarte en una situación en la que has hecho modificaciones en tu árbol de trabajo pero quieres descartar esos cambios antes incluso de que sean establecidos. Exploremos ahora técnicas para revertir cambios en Git antes de que sean añadidos al área de preparación.
Descartando cambios con git restore
El comando git restore
es una herramienta versátil para descartar cambios en tu árbol de trabajo. Para revertir cambios en archivos modificados antes de la puesta en escena, puedes usar este comando de la siguiente manera:
Donde <archivo>
es el nombre de los archivos o su ruta relativa al directorio del proyecto. Este comando revierte el archivo especificado a la versión que está establecida. Si el área de preparación está vacía, revierte el fichero a la versión de la última confirmación.
Revertir a la versión por etapas
Primero vamos a crear un nuevo fichero llamado recipe.txt
que contendrá una simple receta para huevos cocidos usando el comando echo
:
Ahora añadiremos este archivo y lo modificaremos añadiéndole otra línea con otro paso de nuestra receta:
Ups, parece que hemos utilizado el operador incorrecto, concretamente >
(que sobrescribe el fichero) en lugar de >>
(que añade una nueva línea al final del fichero). Antes de tomar cualquier medida para solucionarlo, deberíamos comprobar el estado de nuestro árbol de trabajo y del área de preparación:
Como puede ver, nuestra versión inicial del archivo está establecida, así que vamos a revertir nuestro archivo a esta versión y comprobar de nuevo el estado de nuestro árbol de trabajo y del área de ensayo:
Como puede ver, nuestro árbol de trabajo está ahora limpio, por lo que los cambios se deshicieron, y el archivo se revirtió a la versión staged.
![Creating and staging the file](https://codefinity-content-media-v2.s3.eu-west-1.amazonaws.com/courses/7533d91f-0a23-44a3-afc7-c84d5072e189/section_3/chapter_1/staging_before_reverting.png)
![Reverting to staged version](https://codefinity-content-media-v2.s3.eu-west-1.amazonaws.com/courses/7533d91f-0a23-44a3-afc7-c84d5072e189/section_3/chapter_1/reverting_to_staged_illustration.png)
Revertir a la última confirmación
En primer lugar, debemos confirmar la creación de nuestro archivo recipe.txt
:
El commit se ha realizado correctamente. Ahora, volvamos a otra línea al fichero con otro paso de nuestra receta y comprobemos el estado del árbol de trabajo:
Oops, cometimos otro error aquí. El paso que hemos añadido debería estar en el número 7, no en el 10. No te preocupes, podemos revertir este cambio en nuestro último commit. Revisemos el último commit:
Este commit es exactamente lo que necesitamos, así que ahora podemos restaurar los cambios a esta versión y verificar que nuestro árbol de trabajo está realmente limpio:
Nuestro árbol de trabajo está limpio, lo que significa que nuestros cambios fueron deshechos, y el archivo fue restaurado a la versión del último commit.
![Reverting to the latest commit](https://codefinity-content-media-v2.s3.eu-west-1.amazonaws.com/courses/7533d91f-0a23-44a3-afc7-c84d5072e189/section_3/chapter_1/reverting_to_commit_illustration.png)
¿Todo estuvo claro?