Est-il possible de supprimer Stash par son engagement sha au lieu de tomber par l'index à l'aideComment supprimer Stash COMMIT sha
git stash drop [email protected]{index}
Est-il possible de supprimer Stash par son engagement sha au lieu de tomber par l'index à l'aideComment supprimer Stash COMMIT sha
git stash drop [email protected]{index}
Pas directement, non. Vous devrez convertir le hash en son entrée reflog correspondante, et le laisser tomber par le nom d'entrée reflog.
Utilisez git reflog stash
ou son équivalent (mais plus malléable) git log -g stash
pour parcourir le cache reflog à la recherche de la validation par ID. Considérez ce qu'il faut faire s'il n'est pas présent (peut-être que la cachette a déjà été abandonnée) et/ou que faire si cela se produit plus d'une fois (cela ne devrait jamais arriver en fonctionnement normal, mais rien n'empêche même commit hash plusieurs fois).
git log -g --format='%H %gd' stash | \
awk -v h=$hash '$1 == h { print $2 }'
imprime une ligne par hachage correspondant (en supposant $hash
est réglé sur la pleine hachage de 40 caractères).