Skip to main content

Restauración de una confirmación en GitHub Desktop

Puede usar GitHub Desktop para restaurar una confirmación anterior en el repositorio.

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

  1. En la barra lateral de la izquierda, haz clic en Historial.

    Captura de pantalla de la pestaña "Historial" en la barra lateral. Encima de una lista de confirmaciones, el botón de pestaña, con la etiqueta "Historial", está resaltado con un contorno naranja.

  2. Haga clic con el botón derecho en la confirmación que desea restaurar y seleccione Restaurar confirmación.

    Captura de pantalla de una lista de confirmaciones en la pestaña "Historial". Junto a una confirmación, en un menú contextual, la opción "Restaurar confirmación" está resaltada con un contorno naranja.

  3. El elemento Rama actual de la barra del repositorio mostrará ahora "Head desasociado", junto con el SHA de la confirmación que se restauró.

    Captura de pantalla de la barra del repositorio. El elemento "Rama actual" muestra un estado "HEAD desasociado" y está resaltado con un contorno naranja.

  4. 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