How do I see what is inside a stash without actually applying it?
stash
an application, he's referring to the act of applying the stash. Unclear terminology aside, the question is the same. - anyone git stash show -p stash@{1} >~/.diff && vim ~/.diff
(doesn't have to be vim
. any text editor as long as your text editor has syntax highlighting support for diff
output). - anyone git stash show -p stash@{1} | view -
- anyone view
is aliased to vi
and man view
displays the man page for vim
. (i'll have to change my .bashrc
to use your new trick (it's better than my old way IMO).) - anyone From man git-stash
(which can also be obtained via git help stash
):
The modifications stashed away by this command can be listed with
git stash list
, inspected withgit stash show
, and ...
show [<stash>]
Show the changes recorded in the stash as a diff between the stashed
state and its original parent. When no <stash> is given, shows the
latest one. By default, the command shows the diffstat, but it will
accept any format known to git diff (e.g., git stash show -p stash@{1}
to view the second most recent stash in patch form).
Note: the -p
option generates a patch, as per git-diff
documentation.
List the stashes:
git stash list
Show the files in the most recent stash:
git stash show
Show the changes of the most recent stash:
git stash show -p
Show the changes of the named stash:
git stash show -p stash@{1}
Or in short:
git stash show -p 1
Answered 2023-09-20 20:27:33
git stash list | awk -F: ‘{ print “\n\n\n\n”; print $0; print “\n\n”; system(“git –no-pager stash show -p ” $1); }’ | less
It helped me a lot in the past (cleaning stashes stack). - anyone git stash list | awk -F: '{ print "\n\n\n\n"; print $0; print "\n\n"; system("git stash show -p " $1); }'
Press [Q] to exit each stash. - anyone git stash show -p stash@{1}
lists all the files in a stash. Is it possible to view jus one specific file from the stash? - anyone git stash show -p stash@{0} --name-only
shows just the names of the files (not the contents) in your first stash. - anyone git diff stash@{0}^! -- file.txt
will do it. See here for more details. - anyone