@@ -447,7 +447,7 @@ static int list(int argc, const char **argv, const char *prefix)
git_notes_list_usage, 0);
if (1 < argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[1]);
usage_with_options(git_notes_list_usage, options);
}
@@ -509,7 +509,7 @@ static int add(int argc, const char **argv, const char *prefix)
PARSE_OPT_KEEP_ARGV0);
if (2 < argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[2]);
usage_with_options(git_notes_add_usage, options);
}
@@ -591,7 +591,7 @@ static int copy(int argc, const char **argv, const char *prefix)
if (from_stdin || rewrite_cmd) {
if (argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[0]);
usage_with_options(git_notes_copy_usage, options);
} else {
return notes_copy_from_stdin(force, rewrite_cmd);
@@ -603,7 +603,7 @@ static int copy(int argc, const char **argv, const char *prefix)
usage_with_options(git_notes_copy_usage, options);
}
if (2 < argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[2]);
usage_with_options(git_notes_copy_usage, options);
}
@@ -686,7 +686,7 @@ static int append_edit(int argc, const char **argv, const char *prefix)
PARSE_OPT_KEEP_ARGV0);
if (2 < argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[2]);
usage_with_options(usage, options);
}
@@ -762,7 +762,7 @@ static int show(int argc, const char **argv, const char *prefix)
0);
if (1 < argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[1]);
usage_with_options(git_notes_show_usage, options);
}
@@ -915,7 +915,7 @@ static int merge(int argc, const char **argv, const char *prefix)
error(_("must specify a notes ref to merge"));
usage_with_options(git_notes_merge_usage, options);
} else if (!do_merge && argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[0]);
usage_with_options(git_notes_merge_usage, options);
}
@@ -1069,7 +1069,7 @@ static int prune(int argc, const char **argv, const char *prefix)
0);
if (argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[0]);
usage_with_options(git_notes_prune_usage, options);
}
@@ -1091,7 +1091,7 @@ static int get_ref(int argc, const char **argv, const char *prefix)
git_notes_get_ref_usage, 0);
if (argc) {
- error(_("too many arguments"));
+ error(_("unknown argument: '%s'"), argv[0]);
usage_with_options(git_notes_get_ref_usage, options);
}
@@ -1472,7 +1472,7 @@ test_expect_success 'git notes copy diagnoses too many or too few arguments' '
test_must_fail git notes copy 2>error &&
test_grep "too few arguments" error &&
test_must_fail git notes copy one two three 2>error &&
- test_grep "too many arguments" error
+ test_grep "unknown argument: ${SQ}three${SQ}" error
'
test_expect_success 'git notes get-ref expands refs/heads/main to refs/notes/refs/heads/main' '
Imagine seeing your command failing with "too many arguments" when you run "git cmd foo bar baz". Can you tell it will work if you said "git cmd foo bar"? Or is that trimming your command line too much? Too little? Instead, if the command reports "unknown argument: 'bar'", you'd know that "bar" and everything after it is unwanted. Let's make it so for "git notes". Signed-off-by: Junio C Hamano <gitster@pobox.com> --- builtin/notes.c | 18 +++++++++--------- t/t3301-notes.sh | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-)