From: Jeff King Date: Mon, 2 Jul 2007 04:21:24 +0000 (-0400) Subject: git-stash: don't complain when listing in a repo with no stash X-Git-Tag: v1.5.3-rc0~12^2~1 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=401de4057ac83d473f8bead9b11d00b6371bd6a0;p=git.git git-stash: don't complain when listing in a repo with no stash Previously, the git-log invocation would complain if a repo had not had any stashes created in it yet: $ git-init $ git-stash fatal: ambiguous argument 'refs/stash': unknown revision or path not in the working tree. Use '--' to separate paths from revisions Instead, we only call git-log if we actually have a refs/stash. We could alternatively create the ref when any stash command is called, but it's better for the 'list' command to not require write access to the repo. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- diff --git a/git-stash.sh b/git-stash.sh index 7644bd5a2..18d3322ab 100755 --- a/git-stash.sh +++ b/git-stash.sh @@ -76,7 +76,12 @@ save_stash () { printf >&2 'Saved WIP on %s\n' "$msg" } +have_stash () { + git-rev-parse --verify $ref_stash >/dev/null 2>&1 +} + list_stash () { + have_stash || return 0 git-log --pretty=oneline -g "$@" $ref_stash | sed -n -e 's/^[.0-9a-f]* refs\///p' }