Stashes
Press 4 to open the stash view. tab switches between the two panes.
The list
Section titled “The list”The right pane lists the stash newest first. The left pane shows that stash’s patch, highlighted the same way a working-tree diff is.
Entries are tracked by the commit they point at rather than by their index, because dropping
stash@{0} renumbers everything below it.
Making a stash
Section titled “Making a stash”The stash keys that put work away live in the working tree view, not here:
s stashes every change including untracked files, and S stashes the tracked changes and leaves
the untracked files where they are.
Taking one back
Section titled “Taking one back”| Key | Action |
|---|---|
p |
pop the stash under the cursor: apply it and drop it |
a |
apply the stash under the cursor and leave it on the stash |
d |
drop the stash under the cursor without applying it |
d asks before it drops, since a dropped stash is gone. p and a do not: they only add to the
working tree, and git refuses the cases that would overwrite something.
a means apply here rather than stage-hunk, and p takes the stash under the cursor rather than
the newest, because neither of the working-tree meanings has anything to act on in this view. See
Staging and committing for the rest.
Untracked files
Section titled “Untracked files”An s stash keeps its untracked files on a second parent commit, which is not part of the patch
the left pane shows. They come back with the stash — they are just not visible here.