Bearbeiten: Aus der git help stash
Dokumentation im Pop-Bereich:
Das Anwenden des Staates kann mit Konflikten fehlschlagen. In diesem Fall wird es nicht aus der Stash-Liste entfernt. Sie müssen die Konflikte von Hand lösen und anschließend git stash drop manuell aufrufen.
Wenn die Option --index verwendet wird, wird versucht, nicht nur die Änderungen des Arbeitsbaums, sondern auch die des Index wiederherzustellen. Dies kann jedoch fehlschlagen, wenn Sie Konflikte haben (die im Index gespeichert sind und Sie die Änderungen daher nicht mehr wie ursprünglich anwenden können).
Versuchen Sie, Ihr gesamtes Repo in ein neues Verzeichnis zu kopieren (damit Sie eine Kopie davon haben), und führen Sie Folgendes aus:
git stash show
und speichern Sie diese Ausgabe irgendwo, wenn Sie sich dafür interessieren.
dann: git stash drop
um den widersprüchlichen Vorrat fallen zu lassen dann:git reset HEAD
Das sollte Ihr Repo in dem Zustand belassen, in dem es vorher war (hoffentlich konnte ich Ihr Problem immer noch nicht wiederholen)
===
Ich versuche, Ihr Problem zu tadeln, aber alles, was ich bekomme, wenn ich es benutze, git stash pop
ist:
error: Your local changes to the following files would be overwritten by merge:
...
Please, commit your changes or stash them before you can merge.
Aborting
In einem sauberen Verzeichnis:
git init
echo hello world > a
git add a & git commit -m "a"
echo hallo welt >> a
echo hello world > b
git add b & git commit -m "b"
echo hallo welt >> b
git stash
echo hola mundo >> a
git stash pop
Ich sehe nicht, dass Git versucht, meine Änderungen zusammenzuführen, es schlägt einfach fehl. Haben Sie irgendwelche Repro-Schritte, die wir befolgen können, um Ihnen zu helfen?