Acerca de la restauración de una confirmación
La restauración de una confirmación le permite ver el repositorio en un estado anterior sin necesidad de crear una nueva rama o modificar una rama existente. Esto puede resultar útil al realizar una depuración, ya que permite ver si existe un error en el repositorio en una confirmación anterior.
Al restaurar una confirmación, el repositorio se coloca en un estado "HEAD desasociado". En la terminología de Git "HEAD" es la referencia que apunta a la sugerencia, o confirmación más reciente, de una rama con nombre en el repositorio. Un estado "HEAD desasociado" significa que HEAD hace referencia a una confirmación específica, pero no en una rama con nombre en el repositorio.
Note
Las confirmaciones realizadas en un estado "detached HEAD" se perderán al cambiar de rama, ya que estas confirmaciones no se han realizado en una rama con nombre. Si necesita recuperar las confirmaciones perdidas, consulta Solución de problemas.
Restauración de una confirmación
-
En la barra lateral de la izquierda, haz clic en Historial.
-
Haga clic con el botón derecho en la confirmación que desea restaurar y seleccione Restaurar confirmación.
-
El elemento Rama actual de la barra del repositorio mostrará ahora "Head desasociado", junto con el SHA de la confirmación que se restauró.
-
Para salir del estado "HEAD desasociado", deberá cambiar las ramas. Para más información, consulta Administración de ramas en GitHub Desktop.
Solución de problemas
Puede recuperar confirmaciones realizadas en un estado "HEAD desasociado" mediante el comando git reflog
de la línea de comandos de Git. Puede abrir el repositorio en la línea de comandos desde GitHub Desktop en la barra de menús, seleccionando Repositorio y haciendo clic en Abrir en la línea de comandos.
El comando git reflog
mostrará el resultado de los eventos que se han producido en el repositorio, incluidas las confirmaciones. Este es un ejemplo de resultado del comando git reflog
.
81fa9136f8 (HEAD -> main) HEAD@{0}: checkout: moving from 8bd5e736a27a52a7e36a856b30e6f0582d341aa1 to main
8bd5e736a2 HEAD@{1}: commit: testing out a feature
22fa76c125 HEAD@{2}: checkout: moving from main to 22fa76c1250a2847305b9325752d941dbaa55983
La línea 8bd5e736a2 HEAD@{1}: commit: testing out a feature
es la confirmación que queremos recuperar, ya que se realizó mientras el repositorio estaba en un estado "HEAD desasociado". Para recuperarla, puede ejecutar git cherry-pick 8bd5e736a2
para aplicar la confirmación a la rama actual del repositorio.
Información adicional
- HEAD desasociado en la documentación de Git
- Selección exclusiva de Git en la documentación