Eu freqüentemente uso git stash
e git stash pop
para salvar e restaurar alterações na minha árvore de trabalho. Ontem, tive algumas alterações na minha árvore de trabalho que havia escondido e aparado e, em seguida, fiz mais alterações na minha árvore de trabalho. Gostaria de voltar e revisar as alterações ocultas de ontem, mas git stash pop
parece remover todas as referências ao commit associado.
Eu sei que, se eu usar git stash
, o .git / refs / stash contém a referência do commit usado para criar o stash. E .git / logs / refs / stash contém todo o stash. Mas essas referências se foram depois git stash pop
. Eu sei que o commit ainda está no meu repositório em algum lugar, mas não sei o que era.
Existe uma maneira fácil de recuperar a referência de confirmação de stash de ontem?
Observe que isso não é crítico para mim hoje porque tenho backups diários e posso voltar à árvore de trabalho de ontem para obter minhas alterações. Estou perguntando, porque deve haver uma maneira mais fácil!
git stash
, git pull -r upstream
, git push -f origin
, git stash pop
, e pop disse "fatal: log para refs / estoque está vazio". 😲 Tentei várias respostas, nada funcionou. Quando procurei em .git / refs / stash , o SHA estava lá. Talvez um problema ao marcar uma unidade de rede do Windows para sincronização offline? --️
git stash pop
, poderá fazê-logit stash apply
. Faz o mesmo, exceto que não remove a referência ao stash aplicado.