Skip to main content

Comprobación de un commit en GitHub Desktop

Puede usar GitHub Desktop para realizar un checkout de un commit anterior en su repositorio.

Acerca de la extracción de un commit

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 punta, o commit más reciente, de una rama con nombre en tu repositorio. Un estado de "HEAD desasociado" significa que HEAD hace referencia a un commit específico, pero no en una rama con nombre en tu repositorio.

Nota:

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.

Revisar un commit

  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.](/assets/images/help/desktop/checkout-commit.png)
    
  3. El elemento Rama actual de la barra del repositorio mostrará ahora "HEAD separado", junto con el SHA del commit que fue verificado.

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

  4. Para salir del estado "HEAD desasociado", deberá cambiar de rama. 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 el commit a la rama actual del repositorio.

Información adicional

  •         [HEAD desasociado](https://git-scm.com/docs/git-checkout#_detached_head) en la documentación de Git
    
  •         [Git cherry-pick](https://git-scm.com/docs/git-cherry-pick) en la documentación de Git