Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Revertir un Commit Específico | Revertir Cambios
Conceptos Esenciales de Git

bookRevertir un Commit Específico

git revert

Para revertir un commit específico, utilice el comando git revert. Este comando crea un nuevo commit que revierte los cambios introducidos por el commit especificado. Sintaxis básica:

git revert <commit-hash>

En lugar de usar HEAD (que apunta al último commit), especifique el hash del commit (ID del commit) que desea revertir, reemplazando <commit-hash> por el valor real del hash.

Más sobre los Hashes

Cada commit tiene un ID único: una cadena hexadecimal de 40 caracteres compuesta por dígitos (0–9) y letras (a–f). Este identificador se denomina hash. Ahora, visualice el commit más reciente:

El commit más reciente

Aquí está su hash:

1b00736255dca7d78659a9971d0c30fba0eb3075

Note
Nota

Tendrá un hash diferente para este commit por la razón explicada a continuación.

El hash del commit se calcula utilizando el algoritmo SHA-1 en base a la siguiente información:

  • Mensaje del commit;
  • Fecha;
  • Autor;
  • Instantánea del árbol de trabajo;
  • Hash del commit padre (o commits cuando hay más de un padre).

Si el commit es el primero en el repositorio, entonces el hash del commit padre aparentemente no se calcula.

Dado que toda esta información del commit se utiliza para calcular su hash, el uso de hashes como identificadores de commit garantiza la consistencia del repositorio. Además, la probabilidad de que dos commits diferentes tengan el mismo hash (la probabilidad de colisión) es extremadamente baja, por lo que es muy poco probable que ocurra por casualidad.

Básicamente, si se modifica cualquier cosa en el commit, su hash también cambiará. Esto significa que, en caso de que los datos se corrumpan por cualquier motivo, Git puede utilizar el hash para identificarlo.

Note
Nota

Al modificar un commit, el identificador del commit cambia, por lo que es preferible no utilizar el comando git commit --amend al trabajar con repositorios remotos.

Ejemplo de flujo de trabajo

Antes de decidir qué commit revertir, visualizar los cuatro commits más recientes:

Cuatro commits más recientes

Existe un commit donde se añadió el archivo recipe.txt. Revertir este commit para crear uno nuevo que deshaga esos cambios y elimine efectivamente el archivo. En este ejemplo, el hash del commit es:

043b634d76a7a7744757350512b6367417c29e0

El hash de tu commit será diferente. Ahora revierte este commit:

Reemplaza este hash por el tuyo.

Revertir en Git

Una vez más, el editor de texto predeterminado se abre con el mensaje de confirmación predeterminado para el revertir. Deje el mensaje sin cambios.

Mensaje de confirmación predeterminado para revertir

A continuación, cierre correctamente el editor de texto y muestre los cambios realizados en el último commit:

El último commit

Se produjeron 7 eliminaciones, lo que significa que se eliminaron las siete líneas del archivo. Ahora verifique que el archivo haya sido eliminado listando todos los archivos y directorios no ocultos en el directorio del proyecto:

Listado de archivos y directorios

El archivo recipe.txt ha sido eliminado exitosamente.

question-icon

Relaciona las acciones con los comandos respectivos.


Revert the latest commit:

Revert a specific commit:

Unstage changes:

Revert unstaged changes:

Unstage changes and then revert the changes in the working directory:

Overwrite the existing commit:

Click or drag`n`drop items and fill in the blanks

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 5

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

What happens if I revert a commit that is not the most recent one?

Can I revert multiple commits at once?

What should I do if I encounter a merge conflict during a revert?

Awesome!

Completion rate improved to 3.57

bookRevertir un Commit Específico

Desliza para mostrar el menú

git revert

Para revertir un commit específico, utilice el comando git revert. Este comando crea un nuevo commit que revierte los cambios introducidos por el commit especificado. Sintaxis básica:

git revert <commit-hash>

En lugar de usar HEAD (que apunta al último commit), especifique el hash del commit (ID del commit) que desea revertir, reemplazando <commit-hash> por el valor real del hash.

Más sobre los Hashes

Cada commit tiene un ID único: una cadena hexadecimal de 40 caracteres compuesta por dígitos (0–9) y letras (a–f). Este identificador se denomina hash. Ahora, visualice el commit más reciente:

El commit más reciente

Aquí está su hash:

1b00736255dca7d78659a9971d0c30fba0eb3075

Note
Nota

Tendrá un hash diferente para este commit por la razón explicada a continuación.

El hash del commit se calcula utilizando el algoritmo SHA-1 en base a la siguiente información:

  • Mensaje del commit;
  • Fecha;
  • Autor;
  • Instantánea del árbol de trabajo;
  • Hash del commit padre (o commits cuando hay más de un padre).

Si el commit es el primero en el repositorio, entonces el hash del commit padre aparentemente no se calcula.

Dado que toda esta información del commit se utiliza para calcular su hash, el uso de hashes como identificadores de commit garantiza la consistencia del repositorio. Además, la probabilidad de que dos commits diferentes tengan el mismo hash (la probabilidad de colisión) es extremadamente baja, por lo que es muy poco probable que ocurra por casualidad.

Básicamente, si se modifica cualquier cosa en el commit, su hash también cambiará. Esto significa que, en caso de que los datos se corrumpan por cualquier motivo, Git puede utilizar el hash para identificarlo.

Note
Nota

Al modificar un commit, el identificador del commit cambia, por lo que es preferible no utilizar el comando git commit --amend al trabajar con repositorios remotos.

Ejemplo de flujo de trabajo

Antes de decidir qué commit revertir, visualizar los cuatro commits más recientes:

Cuatro commits más recientes

Existe un commit donde se añadió el archivo recipe.txt. Revertir este commit para crear uno nuevo que deshaga esos cambios y elimine efectivamente el archivo. En este ejemplo, el hash del commit es:

043b634d76a7a7744757350512b6367417c29e0

El hash de tu commit será diferente. Ahora revierte este commit:

Reemplaza este hash por el tuyo.

Revertir en Git

Una vez más, el editor de texto predeterminado se abre con el mensaje de confirmación predeterminado para el revertir. Deje el mensaje sin cambios.

Mensaje de confirmación predeterminado para revertir

A continuación, cierre correctamente el editor de texto y muestre los cambios realizados en el último commit:

El último commit

Se produjeron 7 eliminaciones, lo que significa que se eliminaron las siete líneas del archivo. Ahora verifique que el archivo haya sido eliminado listando todos los archivos y directorios no ocultos en el directorio del proyecto:

Listado de archivos y directorios

El archivo recipe.txt ha sido eliminado exitosamente.

question-icon

Relaciona las acciones con los comandos respectivos.


Revert the latest commit:

Revert a specific commit:

Unstage changes:

Revert unstaged changes:

Unstage changes and then revert the changes in the working directory:

Overwrite the existing commit:

Click or drag`n`drop items and fill in the blanks

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 5
some-alt