From: Jon Seymour Date: Wed, 18 Aug 2010 13:48:51 GMT Subject: [PATCH v5 6/8] detached-stash: simplify git stash show Message-ID: <1282139333-5150-3-git-send-email-jon.seymour@gmail.com> In-Reply-To: <1282139333-5150-1-git-send-email-jon.seymour@gmail.com> 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 --- git-stash.sh | 14 ++------------ 1 files changed, 2 insertions(+), 12 deletions(-) diff --git a/git-stash.sh b/git-stash.sh index ff1edc9..7ce818b 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 } # -- 1.7.2.1.95.g4fabf