Introducción a Git
Teoría: Stash
Imagina que estás trabajando en una funcionalidad importante, pero de repente surge una tarea urgente. No puedes hacer un commit porque los cambios no están listos, ¿cómo pausas tu trabajo sin perderlo? 😱
En esta lección, aprenderemos a guardar temporalmente los cambios con git stash y a restaurarlos cuando sea necesario. ¡Perfecto para situaciones imprevistas! ⏸️🔄
¿Qué es git stash y para qué sirve?
Supongamos que estás desarrollando una nueva funcionalidad en un archivo y de repente debes corregir un error en un área del código no relacionada con tu trabajo actual. No puedes hacer commit de tus cambios porque aún no están completos, pero no quieres perderlos. Aquí es donde git stash te permite:
- Guardar tus cambios actuales en un área temporal.
- Volver a un estado limpio del repositorio.
- Hacer los cambios urgentes.
- Restaurar los cambios guardados y retomar tu trabajo.
Guardar cambios con git stash
Para simular este proceso, hagamos lo siguiente:
- Creamos y agregamos un archivo al índice.
- Guardamos los cambios en el stash.
⏬ Salida esperada:
Ahora guardemos estos cambios con git stash:
Salida esperada:
Verificamos nuevamente el estado con git status y notamos que el área de trabajo está limpia:
¿Qué sucedió?
El comando git stash no elimina los archivos; solo los almacena temporalmente en una sección dentro de .git, permitiéndonos retomar el trabajo más tarde.
git stash no guarda archivos nuevos que no han sido añadidos con git add.
Restaurar cambios con git stash pop
Una vez que hemos realizado la tarea urgente y queremos recuperar nuestros cambios guardados, usamos:
⏬ Salida esperada:
Ahora nuestros cambios han sido restaurados y podemos continuar trabajando.
Diferencia entre git stash apply y git stash pop:
git stash applyrestaura los cambios pero mantiene< la copia en el stash.git stash poprestaura los cambios y los elimina del stash.
Uso avanzado: Varios git stash
El stash funciona como una pila (estructura donde el último en entrar es el primero en salir). Podemos almacenar múltiples cambios y recuperarlos en orden inverso.
También podemos ver la lista de elementos guardados con:
⏬ Resultado:
Para restaurar un stash específico, usamos:
Para eliminar un stash que ya no necesitamos:
Resumen
git stashguarda cambios sin hacer commit, permitiéndote cambiar de contexto sin perder tu trabajo.git stash poprestaura y elimina el último estado guardado en elgit stash applyrestaura los cambios pero mantiene la copia en el stash.- Podemos ver los cambios guardados usando
git stash list. git stashfunciona como una pila, permitiendo almacenar múltiples cambios y recuperarlos en orden inverso.
Con git stash, podemos trabajar de manera más eficiente sin preocuparnos por perder cambios no listos para el commit. ¡Pruébalo en tu propio flujo de trabajo!
Completado
0 / 15