This patch allows git stash branch to work with stash-like commits created by git stash create. Two changes were required: * relax the pre-condition so that a stash stack is required if and only if a stash argument is not specified * don't attempt to drop a stash argument that doesn't look like a stash reference. Signed-off-by: Jon Seymour <jon.seymour@xxxxxxxxx> --- git-stash.sh | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) diff --git a/git-stash.sh b/git-stash.sh index 1d95447..432ddae 100755 --- a/git-stash.sh +++ b/git-stash.sh @@ -225,6 +225,12 @@ show_stash () { git diff $flags $b_commit $w_commit } +if_stash_ref() { + ref="$1" + shift + test "${ref#stash}" = "${ref}" -a "${ref#$ref_stash}" = "${ref}" || "$@" +} + apply_stash () { applied_stash= unstash_index= @@ -359,20 +365,20 @@ drop_stash () { } apply_to_branch () { - have_stash || die 'Nothing to apply' test -n "$1" || die 'No branch name specified' branch=$1 if test -z "$2" then + have_stash || die 'Nothing to apply' set x "$ref_stash@{0}" fi stash=$2 git checkout -b $branch $stash^ && apply_stash --index $stash && - drop_stash $stash + if_stash_ref "$stash" drop_stash "$stash" } # The default command is "save" if nothing but options are given -- 1.7.2.1.111.g8fc90 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html