Stash

Command summary

git stash list [<options>]
git stash show [<options>] [<stash>]
git stash drop [-q|--quiet] [<stash>]
git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]
git stash branch <branchname> [<stash>]
git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]
         [-u|--include-untracked] [-a|--all] [-m|--message <message>]
         [--pathspec-from-file=<file> [--pathspec-file-nul]]
         [--] [<pathspec>…​]]
git stash clear
git stash create [<message>]
git stash store [-m|--message <message>] [-q|--quiet] <commit>

Creating

git stash
git stash push --message
git stash save save-name

Applying

Remove stash if no error:

git stash pop
git stash pop stash@{1}

Keep stash

git stash apply
git stash apply stash@{1}

Seeing Stuff

Listing stashes

git stash list

Produce a diff

git stash show
git stash show -p stash@{1}

Deleting

Remove a single stash

git stash drop
git stash drop stash@{1}

Clear all stashes

git stash clear

Docs