git stash
git
Uso
git stash [push] [-u] [-m "<message>"]Aparta los cambios sin terminar y te deja el árbol limpio; los archivos sin rastrear se quedan salvo con -u, y pop borra la entrada mientras apply la conserva.
Opciones habituales
| Opción | Significado |
|---|---|
| -u | include untracked files, which are otherwise left behind |
| -a | include ignored files too |
| -k | keep the staging area as it is |
| -p | stash selected hunks |
| pop | apply the newest entry and delete it |
| apply | apply it and keep the entry |
| list | show the entries |
| drop <stash> | delete one entry |
Ejemplos
git stash -u -m "wip login"parks tracked and untracked changes under a name
git stash popbrings the newest stash back and removes it from the list
git stash apply stash@{2}applies an older entry and leaves it in the list
Lo confuso es que deshacer tiene varias formas: mover a dónde apunta una rama no es lo mismo que añadir un commit que la revierte.
Cómo leerlo
- Los corchetes [ ] marcan una parte que puedes omitir.
- Los puntos suspensivos … indican que puedes poner varios.
- Las opciones distinguen mayúsculas: en algunos comandos -r y -R no hacen lo mismo.
Preguntas
Q. ¿Qué hace git stash?
Aparta los cambios sin terminar y te deja el árbol limpio; los archivos sin rastrear se quedan salvo con -u, y pop borra la entrada mientras apply la conserva.
Q. ¿Cómo se escribe?
git stash [push] [-u] [-m "<message>"] — los corchetes marcan lo que puedes omitir.
Q. ¿Cuántas opciones vale la pena saber?
Aquí van 8; la lista completa está en man git. Este comando está en git.
Comandos relacionados
página man: man git-stash