Sobes.tech
Junior — Middle

¿Puedes explicar qué hace el comando Git reset y en qué escenarios se utiliza?

sobes.tech AI

Respuesta de la IA

El comando git reset se utiliza para deshacer cambios y mover el puntero de la rama actual (HEAD) a otro commit. Puede modificar el estado del índice (área de preparación) y del directorio de trabajo dependiendo de los parámetros.

Opciones principales:

  • git reset --soft <commit> — mueve HEAD al commit especificado, dejando los cambios en el índice y en el directorio de trabajo. Se usa para deshacer commits pero mantener los cambios para volver a hacer commit.

  • git reset --mixed <commit> (por defecto) — mueve HEAD y restablece el índice, pero los cambios permanecen en el directorio de trabajo. Permite deshacer commits y eliminar cambios del índice.

  • git reset --hard <commit> — mueve HEAD, restablece el índice y el directorio de trabajo, eliminando completamente todos los cambios después del commit especificado.

Escenarios de uso:

  • Deshacer los últimos commits.
  • Eliminar cambios del índice.
  • Revertir completamente al estado anterior.

Ejemplo:

git reset --hard HEAD~1  # revertir un commit atrás eliminando cambios