📦 Git stash explicado fácil: guarda cambios sin hacer commit (y sin perderlos)

Si trabajas con Git, hay una situación muy común:
Estás trabajando… pero necesitas cambiar de rama rápidamente 😅
Y tienes cambios sin terminar.
👉 No quieres hacer commit
👉 No quieres perder lo que hiciste
Aquí es donde entra:
git stash 🚀
🧠 Qué es git stash
git stash es una herramienta que permite:
Guardar temporalmente cambios sin hacer commit
Es como poner tu trabajo en una “caja” 📦
para recuperarlo después.
⚡ Cuándo usar git stash
Usa stash cuando:
✔️ necesitas cambiar de rama rápido
✔️ estás en medio de algo
✔️ no quieres hacer commit aún
✔️ quieres limpiar tu workspace
🧪 Ejemplo real
Estás en una rama:
git status
Resultado:
modified: app.js
Pero necesitas cambiar de rama:
git checkout main
❌ Error: tienes cambios sin guardar
📦 Solución: usar stash
git stash
👉 Git guarda los cambios y limpia tu carpeta
🔄 Cambiar de rama sin problemas
git checkout main
🔁 Recuperar cambios
git stash pop
👉 Tus cambios vuelven como estaban
📚 Comandos principales
Guardar cambios
git stash
Ver lista de stash
git stash list
Ejemplo:
stash@{0}
stash@{1}
Aplicar stash (sin borrarlo)
git stash apply
Aplicar y eliminar (más común)
git stash pop
Eliminar stash
git stash drop
Limpiar todos
git stash clear
🧠 Guardar stash con mensaje
Muy útil 🔥
git stash save "trabajo en login"
📦 Guardar archivos específicos
git stash push archivo.js
🧪 Aplicar stash específico
git stash apply stash@{1}
⚠️ Conflictos con stash
Sí, pueden pasar 😅
Cuando haces:
git stash pop
Y hay cambios en la rama actual:
👉 puede haber conflicto
Solución:
- igual que merge
- editar archivo
git add
🧠 Diferencia clave
Comando Qué hace stash guarda temporalmente commit guarda permanentemente
🧠 Cuándo NO usar stash
❌ para trabajo importante
❌ como sistema de backup
❌ para guardar cosas por días
👉 Para eso usa commits
🧠 Buenas prácticas
✔️ usa mensajes en stash
✔️ limpia stash regularmente
✔️ no acumules muchos
✔️ usa pop en lugar de apply
❌ Errores comunes
❌ olvidar stash
Pierdes el contexto
❌ usar stash como backup
No es su función
❌ no revisar stash list
Puedes perder cambios
📌 Flujo típico
git stash git checkout otra-rama # trabajas git checkout rama-original git stash pop
🧠 Concepto clave
stash es un “guardado rápido temporal”
👉 no reemplaza commits
🧠 Conclusión:
git stash es una herramienta simple pero poderosa.
Te permite:
- cambiar de contexto rápidamente
- trabajar sin miedo
- evitar commits innecesarios
Y lo mejor:
Es uno de los trucos favoritos de los desarrolladores pro 😄
Volver al post Pilar:
Tags de este post
Preguntas frecuentes
git stash show -p