El botón de "ay, no": undo, revert, reset
Esta es la parte que convierte a de una tarea molesta en un superpoder. Cuando algo sale mal — y saldrá mal — así es como lo deshaces.
- Descartar cambios no guardados — editaste (o la IA editó) algunos archivos y las cosas empeoraron, pero aún no has hecho . Puedes descartar todo y volver a tu último commit bueno.
- Revertir un commit — guardaste un cambio, y luego te diste cuenta de que era malo.
git revertcrea un commit nuevo que deshace el malo, manteniendo tu historial honesto. - Retroceder a un punto anterior — quieres rebobinar tu proyecto a como estaba hace varios commits.
# Undo all uncommitted changes and go back to your last commit
git restore .
# Safely undo a specific bad commit (creates a new "undo" commit)
git revert <commit-id>
# Rewind to an earlier commit (powerful — ask the AI to explain before using)
git reset --hard <commit-id>
Una advertencia: git reset --hard descarta trabajo de forma permanente. Es la herramienta correcta a veces, pero es con la que hay que tener cuidado. Cuando tengas dudas, pregúntale a la IA "¿qué le hará exactamente este comando a mis archivos?" antes de ejecutarlo.