From 9932242f597b2990117430546e411793090e22e2 Mon Sep 17 00:00:00 2001 From: Jean-Noel Avila Date: Thu, 11 May 2017 14:06:33 +0200 Subject: read-tree -m: make error message for merging 0 trees less smart aleck "git read-tree -m" requires a tree argument to name the tree to be merged in. Git uses a cutesy error message to say so and why: $ git read-tree -m warning: read-tree: emptying the index with no arguments is deprecated; use --empty fatal: just how do you expect me to merge 0 trees? $ git read-tree -m --empty fatal: just how do you expect me to merge 0 trees? When lucky, that could produce an ah-hah moment for the user, but it's more likely to irritate and distract them. Instead, tell the user plainly that the tree argument is required. Also document this requirement in the git-read-tree(1) manpage where there is room to explain it in a more straightforward way. Signed-off-by: Jean-Noel Avila Helped-by: Jonathan Nieder Signed-off-by: Junio C Hamano --- builtin/read-tree.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'builtin') diff --git a/builtin/read-tree.c b/builtin/read-tree.c index 8ba64bc785..8eae1e88e8 100644 --- a/builtin/read-tree.c +++ b/builtin/read-tree.c @@ -197,9 +197,10 @@ int cmd_read_tree(int argc, const char **argv, const char *unused_prefix) setup_work_tree(); if (opts.merge) { - if (stage < 2) - die("just how do you expect me to merge %d trees?", stage-1); switch (stage - 1) { + case 0: + die("you must specify at least one tree to merge"); + break; case 1: opts.fn = opts.prefix ? bind_merge : oneway_merge; break; -- cgit v1.2.3