PrácticaBloque 2 · Deshacer
Tres commits y tres resets
Objetivo
Regresar la rama con los tres modos y ver qué le pasa a tu trabajo en cada uno.
Pasos
- Crea tres commits seguidos. Cópialo en una sola línea y con comillas rectas:
for n in uno dos tres; do echo $n >> practica.txt; git add practica.txt; git commit -m "Agrega $n"; done
--soft: el archivo queda en verde, en staging. Vuelve a guardarlo.
git reset --soft HEAD~1
git status
git commit -m "Agrega tres"
- Sin modo: el archivo queda en rojo. ¿Qué modo usó Git? Vuelve a guardarlo.
git reset HEAD~1
git status
git add practica.txt
git commit -m "Agrega tres"
--hard(el más peligroso):
git reset --hard HEAD~2
cat practica.txt
git log --oneline -3
“dos” y “tres” parecen perdidos. No intentes arreglarlo todavía: el siguiente tema es la red de seguridad.
Comprobación
cat practica.txt muestra solo uno y el log ya no tiene “Agrega dos” ni “Agrega tres”.
Si algo sale mal
syntax erroro la terminal se queda esperando con>: el ciclo se copió en varias líneas o con comillas curvas. Presiona Ctrl+C y escríbelo en una sola línea.fatal: ambiguous argument 'HEAD-1': escribiste un guion en lugar de la tilde. En teclado latinoamericano la tilde sale con AltGr ++, o con Alt + 126 en el teclado numérico. Si no sale, usa el hash del commit.