"Kevin Leung" [off-list ref] writes:
The current git-stash behaviour is very error prone to typos. For example,
if you typed "git-stash llist", git-stash would think that you wanted to
save to a stash named "llist", but in fact, you meant "git-stash list".
Signed-off-by: Kevin Leung <redacted>
Thanks. Looks good. except...
quoted hunk
@@ -195,6 +195,10 @@ show)
shift
show_stash "$@"
;;
+save)
+ shift
+ save_stash "$@" && git-reset --hard
+ ;;
... this should be "$*" as it was originally spelled.
Save this script in foo.sh and run "foo.sh a b c" to see what I mean.
#!/bin/sh
foo () {
msg="$1"
echo "Foo here <$1>"
}
foo "$@"
foo "$*"
The current git-stash behaviour is very error prone to typos. For example,
if you typed "git-stash llist", git-stash would think that you wanted to
save to a stash named "llist", but in fact, you meant "git-stash list".
Signed-off-by: Kevin Leung <redacted>
---
Thanks, Junio. It should be alright now.
git-stash.sh | 16 +++++++++-------
1 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/git-stash.sh b/git-stash.sh
index 77c9421..844a3e5 100755
--- a/git-stash.sh
+++ b/git-stash.sh
@@ -1,7 +1,7 @@
#!/bin/sh
# Copyright (c) 2007, Nanako Shiraishi
-USAGE='[ | list | show | apply | clear]'
+USAGE='[ | save | list | show | apply | clear ]'
SUBDIRECTORY_OK=Yes
. git-sh-setup
@@ -195,6 +195,10 @@ show)
shift
show_stash "$@"
;;
+save)
+ shift
+ save_stash "$*" && git-reset --hard
+ ;;
apply)
shift
apply_stash "$@"@@ -202,14 +206,12 @@ apply)
clear)
clear_stash
;;
-help | usage)
- usage
- ;;
*)
- if test $# -gt 0 && test "$1" = save
+ if test "$#" -eq "0"
then
- shift
+ save_stash && git-reset --hard
+ else
+ usage
fi
- save_stash "$*" && git-reset --hard
;;
esac--
1.5.3.7-dirty