Como desarrolladores, hay momentos en los que necesitamos realizar cambios en nuestro código, pero no queremos hacer un commit completo. Tal vez estemos trabajando en una nueva función y necesitamos cambiar algunas líneas de código, pero todavía no estamos listos para cometer esos cambios. Aquí es donde entra en juego Stash en Git.
Git Stash es una herramienta en Git que nos permite guardar temporalmente cambios en nuestro código sin hacer un commit completo. Los cambios se almacenan en lo que se llama "stash" o "almacén" y podemos recuperarlos más tarde cuando estemos listos para incluirlos en el commit.
El comando "Stash" en Git es especialmente útil cuando necesitamos cambiar de rama o cuando necesitamos actualizar nuestro repositorio, pero no queremos hacer un commit incompleto. En lugar de hacer un commit temporal, podemos utilizar Stash para guardar temporalmente esos cambios y luego recuperarlos más tarde.
Para utilizar Git Stash, primero necesitamos tener algunos cambios en nuestro código que no queremos comprometer completamente. A continuación, podemos utilizar el siguiente comando:
Este comando guardará nuestros cambios en una pila de "stash". También podemos incluir un mensaje descriptivo que nos ayude a recordar más tarde de qué se trataba el stash.
A continuación, podemos cambiar de rama o actualizar nuestro repositorio sin temor a perder nuestros cambios.
Para recuperar nuestro stash más tarde, podemos utilizar el siguiente comando:
Este comando aplicará los cambios guardados en la pila de stash a nuestro repositorio actual. También podemos utilizar "git stash list" para ver una lista de todos los stash guardados y "git stash drop" para eliminar un stash específico.
Git Stash también nos permite crear múltiples stash. Esto puede ser útil si necesitamos trabajar en varios cambios a la vez y queremos guardarlos de forma separada.
Para crear un nuevo stash, simplemente utilizamos "git stash save" como antes. Cada nuevo stash se agregará a la pila de stash existente. También podemos etiquetar un stash con una etiqueta específica utilizando el comando:
Podemos utilizar este comando para etiquetar nuestros stash y ayudarnos a identificar más fácilmente lo que hay en cada stash.
Si tenemos varios stash guardados, podemos querer aplicar sólo uno de ellos. Para hacer esto, podemos utilizar el siguiente comando:
Este comando aplica el stash específico que se encuentra en la posición especificada de la pila de stash. Por ejemplo, si queremos aplicar el segundo stash guardado, usaríamos "git stash apply stash@{1}".
Si queremos eliminar un stash específico, podemos utilizar el siguiente comando:
Este comando eliminará el stash específico que se encuentra en la posición especificada de la pila de stash. Por ejemplo, si queremos eliminar el segundo stash guardado, usaríamos "git stash drop stash@{1}".
Git Stash es una herramienta muy útil para los desarrolladores que necesitan realizar cambios temporales en su código sin comprometer completamente esos cambios. Puede ayudarnos a ser más productivos y eficientes, permitiéndonos trabajar en múltiples cambios a la vez y guardarlos de forma separada. Si aún no ha utilizado Git Stash, le recomendamos que lo pruebe en su próximo proyecto.