adit
adit

Reputation: 33644

Undo a git stash

I just did a stash in a project that I haven't commit. Is there a way to go back to the state before I stashed? How could I do this? I've closed the terminal and my laptop is shut down. I've done some researched and it seems there's no way to do this.

Upvotes: 632

Views: 795763

Answers (3)

OmnipotentEntity
OmnipotentEntity

Reputation: 17131

git stash list to list your stashed changes.

git stash show to see what n is in the below commands.

git stash apply to apply the most recent stash.

git stash apply stash@{n} to apply an older stash.

https://git-scm.com/book/en/v2/Git-Tools-Stashing-and-Cleaning

Upvotes: 218

ziad-saab
ziad-saab

Reputation: 20219

You can just run:

git stash pop

and it will unstash your changes.

If you want to preserve the state of files (staged vs. working), use

git stash apply --index

Upvotes: 1173

wisbucky
wisbucky

Reputation: 37807

This will also restore the staging directory:

git stash apply --index

Upvotes: 23

Related Questions