In the case there are no files to stash, but the user asked to stash, we should exit 1 since the stashing failed. --- git-stash.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/git-stash.sh b/git-stash.sh index 789ce2f41d4a3..ca362b1a31277 100755 --- a/git-stash.sh +++ b/git-stash.sh @@ -318,7 +318,7 @@ push_stash () { if no_changes "$@" then say "$(gettext "No local changes to save")" - exit 0 + exit 1 fi git reflog exists $ref_stash || -- https://github.com/git/git/pull/587