Cuando trabajamos con Git, a menudo nos encontramos en la situación de tener cambios en nuestro repositorio que aún no estamos preparados para commitear. Aquí es donde la opción git stash -u
entra en juego.
La opción git stash -u
(o git stash --include-untracked
) es una utilidad poderosa que guarda tus archivos no rastreados. En otras palabras, guarda tanto tus cambios rastreados como no rastreados en una nueva "stash" sin commitear, pues permite volver a un directorio limpio sin perder el trabajo que estabas realizando.
Aquí te presentamos cómo se vería en un ejemplo práctico:
Primero, creas un nuevo archivo en tu repositorio, digamos 'example.txt'. Como es un nuevo archivo, no está rastreado por Git:
echo "Contenido de ejemplo" > example.txt
Si ahora decides que quieres hacer stash
de tus cambios, incluyendo los archivos no rastreados, utilizarías git stash -u
:
git stash -u
Tras ejecutar ese comando, tu directorio de trabajo queda limpio, todos tus cambios, incluyendo 'example.txt', se han almacenado en un nuevo stash.
Cabe señalar que si sólo quieres guardar los cambios en los archivos que ya están siendo rastreados, puedes usar simplemente git stash
. En contraste, las opciones git stash -a
o git stash --all
serán útiles para guardar también los archivos ignorados.
Como buena práctica, se recomienda hacer uso de git stash cuando necesitas cambiar rápidamente de tareas, pero no deseas commitear tu trabajo inmediato. Sin embargo, vale la pena mencionar que utilizar git stash
de manera frecuente puede generar un montón de stash olvidados. Por lo tanto, siempre es aconsejable mantener una gestión adecuada de tus stashs, y limpiar aquellos que ya no se necesitan.
En conclusión, git stash -u
es una herramienta esencial para cualquier desarrollador que necesite guardar temporalmente su trabajo sin comprometer los cambios en un commit. Su uso correcto puede evitar posibles pérdidas de código a medio modificar o borrar, mejorando así la eficiencia del flujo de trabajo del desarrollador.