tutorial - git stash untracked files
git stash aplicar versiĆ³n (4)
Desde la versión 2.11, es bastante fácil, puedes usar el número de pila N en lugar de decir "stash@{n}"
. Así que ahora en lugar de usar:
git stash apply "stash@{n}"
Usted puede escribir:
git stash apply n
Por ejemplo, en tu lista:
stash@{0}: WIP on design: f2c0c72... Adjust Password Recover Email
stash@{1}: WIP on design: f2c0c72... Adjust Password Recover Email
stash@{2}: WIP on design: eb65635... Email Adjust
stash@{3}: WIP on design: eb65635... Email Adjust
Si desea aplicar stash@{1}
puede escribir:
git stash apply 1
De lo contrario, puede usarlo incluso si tiene algunos cambios en su directorio desde 1.7.5.1, pero debe asegurarse de que el alijo no sobrescribirá los cambios de su directorio de trabajo si lo hace, obtendrá un error:
error: Your local changes to the following files would be overwritten by merge:
file
Please commit your changes or stash them before you merge.
En versiones anteriores a 1.7.5.1, se negaba a funcionar si se producía un cambio en el directorio de trabajo.
Notas de lanzamiento de Git:
El usuario siempre tiene que decir "stash @ {$ N}" al nombrar un solo elemento en la ubicación predeterminada del stash, es decir, los reflogs en refs / stash. El comando "git stash" aprendió a aceptar "git stash apply 4" como una mano corta para "git stash apply stash @ {4}"
git stash apply "se utiliza para rechazar el trabajo si hubo algún cambio en el árbol de trabajo, incluso cuando el cambio no se superpuso con el cambio registrado.
Realmente espero que alguien pueda aconsejar.
Tengo 2 ramas maestro | diseño
Trabajando en el diseño hice un alijo y cambié a master, hice algunos ajustes. Cambié de nuevo al diseño e hice un stash solo para perder todos mis cambios en la rama de diseño.
Espero que todo mi trabajo esté dentro de un alijo, ya que no los he borrado ni quitado.
Si hago una lista de alijo obtengo 4 resultados:
stash@{0}: WIP on design: f2c0c72... Adjust Password Recover Email
stash@{1}: WIP on design: f2c0c72... Adjust Password Recover Email
stash@{2}: WIP on design: eb65635... Email Adjust
stash@{3}: WIP on design: eb65635... Email Adjust
Si intento git stash apply f2c0c72
, git stash apply f2c0c72
un error:
fatal: Needed a single revision
f2c0c72: no valid stashed state found
¿Cómo puedo aplicar un alijo específico?
¡¡Espero que alguien pueda ayudar!!
Las claves en el alijo son en realidad el stash@{n}
elementos a la izquierda. Así que prueba:
git stash apply stash@{0}
(tenga en cuenta que en algunas conchas debe citar "stash@{0}"
, como zsh, fish y powershell).
Para obtener la lista de alijo:
git stash list
De hecho, stash @ {0} es una revisión en git a la que puedes cambiar ... pero se git stash apply ...
debería averiguar cómo DTRT aplicarlo a tu ubicación actual.
Para aplicar un alijo y eliminarlo de la lista de alijo, ejecute:
git stash pop stash@{n}
Para aplicar un alijo y mantenerlo en el caché de alijo, ejecute:
git stash apply stash@{n}
Si uno está en una máquina Windows y en PowerShell, debe citar el argumento, como por ejemplo:
git stash apply "stash@{0}"
... o para aplicar los cambios y eliminar del alijo:
git stash pop "stash@{0}"
De lo contrario, sin las comillas podría obtener este error:
fatal: argumento ambiguo ''stash @'': revisión desconocida o ruta que no está en el árbol de trabajo.