stash: complain about unknown flags
commitd6cc2df5c80dc4f52a56679baa5e32539eb028b1
authorJeff King <peff@peff.net>
Wed, 20 May 2015 18:01:32 +0000 (20 14:01 -0400)
committerJunio C Hamano <gitster@pobox.com>
Wed, 20 May 2015 20:47:30 +0000 (20 13:47 -0700)
tree14ef08830713ebc424ea56bb8abfcb99602120ce
parentfdf96a20acf96a6ac538df8113b2aafd6ed71d50
stash: complain about unknown flags

The option parser for git-stash stuffs unknown flags into
the $FLAGS variable, where they can be accessed by the
individual commands. However, most commands do not even look
at these extra flags, leading to unexpected results like
this:

  $ git stash drop --help
  Dropped refs/stash@{0} (e6cf6d80faf92bb7828f7b60c47fc61c03bd30a1)

We should notice the extra flags and bail. Rather than
annotate each command to reject a non-empty $FLAGS variable,
we can notice that "stash show" is the only command that
actually _wants_ arbitrary flags. So we switch the default
mode to reject unknown flags, and let stash_show() opt into
the feature.

Reported-by: Vincent Legoll <vincent.legoll@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-stash.sh
t/t3903-stash.sh