When you call "git reset --mixed <paths>" git will complain that using mixed with paths is deprecated: warning: --mixed option is deprecated with paths. That doesn't tell the user why it's deprecated, or what he should use instead. Expand on the warning and tell the user to just omit --mixed: warning: --mixed with paths is deprecated; use 'git reset -- <paths>' instead The exact wording of the warning was suggested by Jonathan Nieder. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> --- On Sat, Aug 14, 2010 at 21:05, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: > Maybe: > > warning: --mixed with paths is deprecated; use 'git reset -- <paths>' instead That's better, thanks. Here's an amended version, and with tests this time. builtin/reset.c | 2 +- t/t7112-reset-messages.sh | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletions(-) create mode 100755 t/t7112-reset-messages.sh diff --git a/builtin/reset.c b/builtin/reset.c index 1283068..0037be4 100644 --- a/builtin/reset.c +++ b/builtin/reset.c @@ -318,7 +318,7 @@ int cmd_reset(int argc, const char **argv, const char *prefix) * affecting the working tree nor HEAD. */ if (i < argc) { if (reset_type == MIXED) - warning("--mixed option is deprecated with paths."); + warning("--mixed with paths is deprecated; use 'git reset -- <paths>' instead."); else if (reset_type != NONE) die("Cannot do %s reset with paths.", reset_type_names[reset_type]); diff --git a/t/t7112-reset-messages.sh b/t/t7112-reset-messages.sh new file mode 100755 index 0000000..6f2669b --- /dev/null +++ b/t/t7112-reset-messages.sh @@ -0,0 +1,33 @@ +#!/bin/sh +# +# Copyright (c) 2010 Ævar Arnfjörð Bjarmason +# + +test_description='git reset warning and error messages' + +. ./test-lib.sh + +test_expect_success 'setup {err,out}-expect' " + cat >err-expect <<EOF && +warning: --mixed with paths is deprecated; use 'git reset -- <paths>' instead. +EOF + cat >out-expect <<EOF +Unstaged changes after reset: +M hlagh +EOF +" + +test_expect_success 'git reset --mixed <paths> warning' ' + # Not test_commit() due to "ambiguous argument [..] both revision + # and filename" + echo stuff >hlagh && + git add hlagh && + git commit -m"adding stuff" hlagh && + echo more stuff >hlagh && + git add hlagh && + test_must_fail git reset --mixed hlagh >out 2>err && + test_cmp err-expect err && + test_cmp out-expect out +' + +test_done -- 1.7.2.1.339.gfad93 -- 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