Volver a la página principal
viernes 27 septiembre 2024
26

Cómo deshacer un commit con revert en Git

¿Qué es git revert y para qué se usa?

git revert permite deshacer un commit ya integrado en el repositorio sin eliminarlo del historial. En lugar de borrar el commit, genera un nuevo commit que invierte los cambios del commit seleccionado. Este enfoque es útil para corregir errores en el código, restaurar el estado anterior de archivos o para revertir cambios en un entorno colaborativo sin reescribir el historial.

Usar git revert es la opción preferida en equipos de desarrollo cuando se necesita deshacer un cambio en ramas compartidas (por ejemplo, main o develop), ya que evita los conflictos que pueden surgir al reescribir la historia con comandos como reset o rebase.

Ejemplos de uso de git revert

Revertir un commit específico

git revert <SHA_DEL_COMMIT>

Esto crea un nuevo commit que deshace el commit especificado. El parámetro <SHA_DEL_COMMIT> es el hash del commit que deseas revertir. Después de ejecutar este comando, se abrirá un editor de texto para escribir el mensaje del commit revertido.

Revertir múltiples commits

Si necesitas revertir varios commits consecutivos:

git revert <SHA_INICIAL>^..<SHA_FINAL>

Esto revertirá todos los commits en el rango especificado, creando un nuevo commit para cada uno.

Revertir sin abrir el editor de texto

Si no deseas editar manualmente el mensaje del commit revertido, usa la opción -m para indicar el número del commit principal (en caso de un merge), o -n para realizar el revertido sin aplicar automáticamente:

git revert -n <SHA_DEL_COMMIT>

Esto prepara los cambios para ser añadidos en un nuevo commit posteriormente.

Revertir un commit y evitar conflictos

Para evitar conflictos en el revertido (si es posible), usa la opción -X para aplicar estrategias de merge:

git revert -X theirs <SHA_DEL_COMMIT>

Esto prioriza los cambios de la rama actual sobre los cambios del commit que se está revirtiendo.

Referencia oficial

Para más información sobre git revert, puedes consultar la documentación oficial de Git.

Etiquetas:
git
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer