Requisitos previos: Git
Git permite que varios usuarios trabajen en el mismo proyecto simultáneamente. Supongamos que un desarrollador está trabajando en una característica en una rama y necesita realizar cambios de la rama de algún otro desarrollador o si tiene que trabajar urgentemente en alguna otra característica, pero la característica en la que está trabajando actualmente está incompleta. En este caso, no puede confirmar el código parcial de la función actualmente en funcionamiento. Para agregar esta nueva característica, debe eliminar los cambios actuales y almacenarlos en otro lugar. Para este tipo de situación, Git ofrece un comando muy útil conocido como ' alijo de git ‘. alijo de git El comando guarda el código escrito previamente y luego regresa a la última confirmación para comenzar de nuevo. Ahora puede agregar la nueva función sin alterar la anterior, ya que se guarda localmente. Después de comprometerte con la nueva característica, puedes continuar trabajando en la característica anterior que estaba incompleta y no comprometida.
Git alijo frente a Git Commit
Hay dos formas alternativas de guardar cambios en el repositorio de git: ocultar y confirmar.
alijo de git: El comando Git stash se puede utilizar para lograr esto si un desarrollador está trabajando en un proyecto y desea conservar los cambios sin confirmarlos. Esto le permitirá cambiar de sucursal y trabajar en otros proyectos sin afectar las modificaciones existentes. Puede revertir las modificaciones cuando sea necesario, almacena el estado actual y revierte a los desarrolladores a un estado anterior.
compromiso de Git: Los desarrolladores desean almacenar permanentemente sus cambios en el código fuente en el historial del repositorio. El git comprometerse El comando se puede utilizar para lograr esto. Git crea una nueva confirmación que documenta tus modificaciones y las agrega al historial del repositorio.
Para resumir. Git commits guarda permanentemente los cambios en el historial del repositorio, mientras que Git stash se usa para realizar una copia de seguridad de los archivos en los que estamos trabajando pero que aún no están listos para confirmarse.
Git Stash frente a Git Reset
Ambos comandos se pueden combinar para gestionar cambios en un repositorio Git y tener varios casos de uso.
Git reset y Git stash Con estos dos comandos, podemos restaurar todos los archivos previamente eliminados y respaldados al directorio de trabajo actual. Estas dos distinciones principales son las siguientes:
alijo de git | Restablecer Git |
---|---|
Git stash se utiliza para guardar los archivos a los que se les han realizado modificaciones y no están listos para enviarse. | Git reset puede deshacer los cambios por completo y cambia el puntero de la rama a la nueva confirmación |
Los desarrolladores pueden cambiar de rama y trabajar en otras tareas sin afectar los cambios actuales. | El reinicio de Git descarta los cambios que ya se han realizado. |
Git Stash frente a Git Stage
La preparación se utiliza para preparar los cambios para la confirmación posterior, mientras que Git stash se utiliza para realizar una copia de seguridad de los archivos que se han modificado pero que aún no están listos para confirmarse. Ambos comandos se pueden combinar para gestionar cambios en un repositorio Git y tener varios casos de uso.
alijo de git | Etapa Git |
---|---|
Git stash se utiliza para realizar copias de seguridad de archivos | Los archivos se agregan al índice de git usando la etapa git. |
Git stash se utiliza si necesita cambiar a otra tarea o rama mientras trabaja en una función o corrección de errores. | Las modificaciones de las etapas de Git se incluirán en la confirmación posterior cuando utilice el comando git add. |
¿Qué carpeta almacena el historial de Git Stash?
Cuando usamos git stash, los datos se almacenarán en forma de alijos en nuestro repositorio local. De forma predeterminada, los datos se almacenarán en el archivo git/refs/stash. En este archivo, se almacenan todas las referencias y los datos reales se almacenan en el directorio .git/objects, al igual que otros objetos Git.
sharwanand
El siguiente comando se utiliza para enumerar todos los alijos que se han creado.
git stash list>
¿Cómo se guardan los cambios en Git?
Para guardar los cambios no confirmados para su uso posterior, puede utilizar el 'alijo de git' dominio. Este comando guarda sus modificaciones locales y revierte el directorio de trabajo para que coincida con la confirmación HEAD para que le proporcione un directorio de trabajo limpio.
A continuación se muestran algunas opciones importantes que se utilizan con mayor frecuencia:
- Git stash Git stash guardar Lista de Git stash Git stash aplicar Git stash cambios Git stash pop Git stash drop Git stash borrar Git stash rama
Guardando tu trabajo (Git Stash)
git stash>

De forma predeterminada, ejecutando alijo de git guardará los cambios que se han agregado a su índice (cambios por etapas) y los cambios realizados en los archivos actualmente rastreados por Git (cambios por etapas). Para guardar sus archivos sin seguimiento, utilice git alijo -u .
Gestión de varios alijos (lista de alijos de Git)
Puede crear varios alijos y verlos usando el 'lista de alijo de git' dominio. Cada entrada del alijo aparece con su nombre (p. ej. alijo@{1} ), el nombre de la rama que estaba vigente cuando se realizó la entrada y una breve descripción de la confirmación en la que se basó la entrada.
git stash list>

Para proporcionar más contexto al alijo, lo creamos usando el siguiente comando:
git stash save 'message'>
¿Qué son Git Stash Apply y POP? (Git Stash Apply y POP)
Puede volver a aplicar los cambios previamente guardados con el 'git alijo pop' o 'aplicar git stash' comandos. La única diferencia entre ambos comandos es que 'git alijo pop' elimina los cambios del alijo y vuelve a aplicar los cambios en la copia de trabajo mientras 'aplicar git stash' solo vuelve a aplicar los cambios en la copia de trabajo sin eliminar los cambios del alijo. En palabras simples, estallido elimina el estado de la lista de almacenamiento mientras aplicar no elimina el estado de la lista de almacenamiento. Con la ayuda del siguiente comando, podemos volver a aplicar los cambios almacenados. El alijo más actual se aplicará a nuestro directorio de trabajo y también se tomará de la lista de alijos.
git stash pop>

git stash apply>

Por defecto 'git alijo pop' o 'aplicar git stash' volverá a aplicar el alijo creado más recientemente: alijo@{0} Para elegir qué alijo aplicar, puede pasar el identificador como último argumento ( Por ej. :- git stash pop stash@{2}).
Mostrar Git Stash
espectáculo de alijo de git El comando se utiliza para mostrar el resumen de las operaciones realizadas en el alijo.
git stash show>

Crear una rama a partir de su alijo (rama Git Stash)
Si desea crear y verificar una nueva rama a partir de la confirmación en la que se creó originalmente el alijo y aplicar los cambios guardados en el alijo, use 'git stash rama nombre_rama nombre_alijo' . Elimina el alijo que se proporciona como argumento y, si no se proporciona ningún alijo, elimina el último.
git stash branch newbranch stash@{0}>

Limpiar tu alijo (Git Stash Clear)
Para eliminar cualquier alijo en particular ( Por ejemplo: – alijo@{1}), utilizar 'git alijo soltar alijo@{1}' . De forma predeterminada, este comando eliminará alijo@{0} si no se proporciona ningún argumento ( caída de alijo de git ). Para eliminar todos los alijos a la vez, utilice el 'quitar el alijo' dominio.

El comando git stash nos permite mantener modificaciones no confirmadas para poder usarlas según sea necesario en el futuro. Cuando usamos el comando git stash, se realiza una copia de seguridad de los archivos automáticamente. Esto nos permite cambiar de rama, realizar nuestras tareas y luego recuperar fácilmente los archivos cuando estemos listos para trabajar en ellos nuevamente.

Almacenamiento de archivos ignorados o sin seguimiento
Podemos usar el comando git stash para guardar los archivos que no se rastrean o que se ignoran. Siguiendo los pasos a continuación podemos guardar nuestros archivos:
Paso 1: Guarde los cambios para eso usando el siguiente comando.
git stash save --include-untracked>
–include-untracked con esto también guardará todos los archivos sin seguimiento.
Paso 2: Verifica el alijo:
Utilice el siguiente comando para confirmar que se creó el alijo:
git stash list>
Paso 3: Usando el siguiente comando podemos recuperar y aplicar el alijo.
git stash apply stash@{0}>
Etapa 4: Una vez que se complete la recuperación del alijo, si no lo desea, podemos eliminarlo usando el siguiente comando.
git stash drop stash@{0}>
Mejores prácticas de Git Stash
Estas son algunas de las mejores prácticas para utilizar el alijo de git dominio.
- No abuses de git stash: Git stash debe usarse moderadamente siempre que sea muy importante trabajar en otra tarea, entonces solo debemos usar git stash, ya que afectará los cambios que se deben realizar al confirmar.
- Evite mensajes innecesarios: Usando git stash, puedes agregar un mensaje para describir los cambios que estás ocultando. Haz que el mensaje tenga significado. Cuando necesites recordar lo que hay en el alijo más adelante, esto te resultará útil. Emplee declaraciones que sean informativas y evocadoras y que reflejen con precisión los cambios que se ocultan.
- Emplear ramas: El almacenamiento es una herramienta útil cuando se trabaja con ramas de Git. Antes de ocultar los cambios, cree una nueva rama para poder cambiar a diferentes tareas o ramas sin afectar los cambios actuales. Vuelve a la rama y aplica el alijo cuando estés listo para trabajar en las modificaciones una vez más.
- Los cambios deben realizarse lo más rápido posible: el almacenamiento sólo debe utilizarse como una solución temporal. Una vez que haya terminado de realizar una serie de cambios, debe enviarlos al repositorio para conservar un registro de los cambios.