diff options
author | Jeff King <peff@peff.net> | 2007-07-02 00:21:24 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-07-01 21:45:13 -0700 |
commit | 401de4057ac83d473f8bead9b11d00b6371bd6a0 (patch) | |
tree | 3939b8b46531353e8d5368d9f04cf701ba1545db | |
parent | git-stash: fix "can't shift that many" with no arguments (diff) | |
download | tgif-401de4057ac83d473f8bead9b11d00b6371bd6a0.tar.xz |
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 <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | git-stash.sh | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/git-stash.sh b/git-stash.sh index 7644bd5a23..18d3322ab5 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' } |