Tuve que cambiar rápidamente las ramas de git, así que corrí git stash
, pero tuve que ejecutarlo nuevamente porque uno de mis archivos necesitaba editarse.
Así que lo ejecuté git stash
dos veces y estoy listo para volver a editar mis archivos. Corrí, git stash apply
pero no estoy convencido de que todos los archivos que había guardado estuvieran sin guardar. ¿Hay algo que pueda hacer? ¿Alguna forma de comprobarlo?
Cuando corro git stash show
, solo veo el último de mis dos escondites de git.
¿Hay alguna forma de mostrar todo git stashes
?
git stash list
. Si hiciste dos escondites, llamagit stash pop
dos veces.Respuestas:
Puede obtener una lista de todos los alijos con
que te mostrará algo como
Si hiciste dos escondites, simplemente llama
git stash pop
dos veces. A diferencia degit stash apply
,pop
aplica y elimina el último alijo.También puede hacer referencia a un alijo específico, p. Ej.
o
fuente
git stash pop
dos veces porque quieres ambos alijos en la misma confirmación pero encuentras el "error: Tus cambios locales en los siguientes archivos se sobrescribirán mediante la combinación:" en tu segundogit stash pop
, entonces puedes: 1)git stash pop
, 2)git add .
y 3 )git stash pop
.Me encontré con esta situación, hice dos escondites y git stash pop acaba de sacar el último escondite. Así que lo hice
¡Esto sacó mi primer alijo y pude ver todos mis cambios!
fuente
Hiciste algunas preguntas diferentes en la publicación y otros encuestados dieron buenas respuestas a algunas de ellas. El que parece más importante pero no ha sido respondido es este:
>> No estoy convencido de que todos los archivos que tenía guardados estuvieran sin guardar. ¿Hay algo que pueda hacer? ¿Alguna forma de comprobarlo?
Compare el alijo con el árbol local
Creo que lo que quieres hacer es comparar el alijo con tu árbol de trabajo local . Puede poner el interruptor -p en el comando stash y estará bien:
Si hay uno en particular que está buscando, simplemente use su nombre de reserva de git o su identificación de la lista de reserva:
¿Quizás usar el diff?
Si está realmente interesado en impulsar sus habilidades de git, siempre puede optar por una diferencia. Para ver la diferencia entre lo que hay en el alijo y lo que está registrado en HEAD en la rama maestra, se podría usar la siguiente diferencia:
Otro comando ordenado para mostrarle los cambios de los elementos en el historial de alijo que pueden ser útiles es --stat:
Pero creo que la respuesta simple es la respuesta correcta. Simplemente use el interruptor -p y probablemente verá si el alijo que guardó se ha recuperado.
fuente