diff options
author | Jon Seymour <jon.seymour@gmail.com> | 2010-08-21 14:09:02 +1000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-08-21 23:51:22 -0700 |
commit | a9bf09e19d9ca35e67cd6c5a145fd0e778af82f0 (patch) | |
tree | f2855f36feb936494759f358317cfa2e7e533f83 /git-stash.sh | |
parent | fb433dc912ffb64364571750bedde988f29e736b (diff) | |
download | git-a9bf09e19d9ca35e67cd6c5a145fd0e778af82f0.tar.gz |
detached-stash: simplify git stash show
This commit refactors git stash show to make use of the assert_stash_like function.
git show now dies if the presented argument is non-stash-like.
Previous behaviour was to tolerate commits that were not even stash-like.
Previously, git stash show would accept stash-like arguments, but
only if there was a stash on the stack.
Now, git stash accepts stash-like arguments always and only fails
if no stash-like argument is specified and there is no stash stack.
Signed-off-by: Jon Seymour <jon.seymour@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-stash.sh')
-rwxr-xr-x | git-stash.sh | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/git-stash.sh b/git-stash.sh index ff1edc918b..7ce818bd1b 100755 --- a/git-stash.sh +++ b/git-stash.sh @@ -210,19 +210,9 @@ list_stash () { } show_stash () { - have_stash || die 'No stash found' - - flags=$(git rev-parse --no-revs --flags "$@") - if test -z "$flags" - then - flags=--stat - fi - - w_commit=$(git rev-parse --quiet --verify --default $ref_stash "$@") && - b_commit=$(git rev-parse --quiet --verify "$w_commit^") || - die "'$*' is not a stash" + assert_stash_like "$@" - git diff $flags $b_commit $w_commit + git diff ${FLAGS:---stat} $b_commit $w_commit } # |