J'ai dû changer rapidement de branche git, alors j'ai couru git stash
, mais j'ai dû le relancer car l'un de mes fichiers avait besoin d'être édité.
J'ai donc exécuté git stash
deux fois et je suis prêt à revenir à l'édition de mes fichiers. J'ai couru git stash apply
mais je ne suis pas convaincu que tous les fichiers que j'avais cachés l'ont été. Y a-t'il quelque chose que je puisse faire? Un moyen de vérifier?
Quand je cours git stash show
, je vois juste le dernier de mes deux stashes git.
Est-il possible de tout montrer git stashes
?
git stash list
. Si vous avez fait deux cachettes, appelezgit stash pop
deux fois.Réponses:
Vous pouvez obtenir une liste de toutes les cachettes avec
qui vous montrera quelque chose comme
Si vous avez fait deux cachettes, appelez simplement
git stash pop
deux fois. Par opposition àgit stash apply
,pop
applique et supprime la dernière réserve.Vous pouvez également référencer une réserve spécifique, par exemple
ou
la source
git stash pop
deux fois parce que vous voulez les deux stashes dans le même commit mais que vous rencontrez l'erreur ": Vos modifications locales apportées aux fichiers suivants seraient écrasées par la fusion:" le deuxièmegit stash pop
, vous pouvez: 1)git stash pop
, 2)git add .
et 3 )git stash pop
.Je suis tombé sur cette situation, j'ai fait deux stashes et git stash pop vient de décoller le dernier stash. Alors j'ai fait
Cela a libéré ma première réserve et j'ai pu voir tous mes changements!
la source
Vous avez posé quelques questions différentes par courrier, et d'autres répondants ont donné de bonnes réponses à certaines d'entre elles. Celui qui semble le plus important mais qui n'a pas reçu de réponse est celui-ci:
>> Je ne suis pas convaincu que tous les fichiers que j'avais cachés l'ont été. Y a-t'il quelque chose que je puisse faire? Un moyen de vérifier?
Comparer la réserve à l'arborescence locale
Je pense que ce que vous voulez faire est de comparer la réserve à votre arbre de travail local . Vous pouvez mettre le commutateur -p sur la commande stash et vous êtes bon:
Si vous en recherchez un en particulier, utilisez simplement son nom ou son identifiant git stash dans la liste de stockage:
Peut-être utiliser le diff?
Si vous êtes vraiment intéressé à développer vos compétences git, vous pouvez toujours opter pour une différence. Pour voir la différence entre ce qui se trouve dans la réserve et ce qui est archivé dans HEAD sur la branche maître, le diff suivant peut être utilisé:
Une autre commande intéressante pour vous montrer les modifications des éléments de l'historique de la sauvegarde qui pourraient être utiles est --stat:
Mais je pense que la réponse simple est la bonne réponse. Utilisez simplement le commutateur -p et vous verrez probablement si la cachette que vous avez mise sur les tablettes a été récupérée.
la source