Это кажется очень глупой ошибкой, я просто сделал git stash pop
на грязном рабочем дереве. Я не знаю никакого способа сохранить желаемые изменения и отменить stash pop
. Есть ли один? Или такая ошибка непростительна?Undo git stash pop on грязное рабочее дерево
15
A
ответ
8
Если у вас все еще есть SHA1, вы можете создать патч из него (git format-patch SHA1
) и применить патч в обратном порядке (git apply -R filename.patch
).
Если вы потеряли SHA1, см How to recover a dropped stash in Git?
1
git stash pop
делает 2 вещи: git stash apply
и git stash drop
. Если вы можете отменить drop
, используя this question and answers, вам просто нужно отменить apply
. Я не уверен, как это сделать, , но вы можете посмотреть . но adl делает.git rebase
Как вы создаете файл патча из команды format-patch? – meson10
Данная команда создает патч для фиксации 'SHA1'. – adl
Это не похоже на слияние; когда я делал «git stash pop» в моем грязном рабочем каталоге, он объединил спрятанные изменения, поэтому 'git format-patch SHA1' ничего не делал. Любые идеи для обходного пути? – Will