untracked tutorial stash name files git

git - tutorial - stash @{1} es ambiguo?



git stash untracked files (5)

Estoy tratando de obtener información sobre mi escondite, pero git me está diciendo que el stash@{0} y el stash@{1} son ambiguos. git stash list funciona bien, y .git/logs/refs/stash parece tener el contenido apropiado (no es que yo sea un experto en git interna).

% git stash list stash@{0}: On master: two stash@{1}: On master: one % git stash show stash@{1} fatal: ambiguous argument ''stash@1'': unknown revision or path not in the working tree. Use ''--'' to separate paths from revisions

Simplemente el git stash show funciona bien. Entonces, ¿por qué los nombres que me da la git stash list me parecen ambiguos?


Hola, me pasó lo mismo. La forma más fácil de solucionarlo fue:

$ git stash apply stash@"{2}"

Estoy usando un shell de Windows Git.


Para usuarios de zsh:

$ git stash apply stash@''{''1''}''


Si tiene este error al trabajar en Emacs con Magit en Windows (como yo)
Espero que esta solución rápida te ayude:

(if (eq system-type ''windows-nt) (defadvice magit-run-git (before magit-run-git-win-curly-braces (&rest args) activate) "Escape {} on Windows" (setcar (nthcdr 2 args) (replace-regexp-in-string "{//([0-9]+//)}" "////{//1////}" (elt args 2))) ) )

Esto citará {} en un 3er parámetro en ("stash", "cmd", "stash@{0}") que es ejecutado por magit-run-git


Simplemente ponga la identificación escondida entre comillas simples:

git stash apply ''stash@{1}''


Tu caparazón se está comiendo las llaves, así que mientras dices stash@{1} , git ve stash@1 y eso no tiene sentido. Cite el argumento (use git stash apply "stash@{1}" ) o reconfigure su caparazón para expandir solo las llaves si hay una coma entre ellas (zsh se puede configurar de cualquier manera, bash solo expande llaves con una coma o rango entre ellos, otros caparazones pueden comportarse de una u otra manera).