1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-06-10 09:56:10 +02:00

add: use advise_if_enabled for ADVICE_ADD_EMPTY_PATHSPEC

Since 93b0d86aaf (git-add: error out when given no arguments.,
2006-12-20) we display a message when no arguments are given to "git
add".

Part of that message was converted to advice in bf66db37f1 (add: use
advise function to display hints, 2020-01-07).

Following the same line of reasoning as in the previous commit, it is
sensible to use advise_if_enabled() here.

Therefore, use advise_if_enabled() in builtin/add.c to show the
ADVICE_ADD_EMPTY_PATHSPEC advice, and don't bother checking there the
visibility of the advice or displaying the instruction on how to disable
it.

Also add a test for these messages, in order to detect a possible
change in them.

Signed-off-by: Rubén Justo <rjusto@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Rubén Justo 2024-03-30 15:08:59 +01:00 committed by Junio C Hamano
parent 9da49befd0
commit 1028db00f7
2 changed files with 12 additions and 4 deletions

View File

@ -438,10 +438,8 @@ int cmd_add(int argc, const char **argv, const char *prefix)
if (require_pathspec && pathspec.nr == 0) {
fprintf(stderr, _("Nothing specified, nothing added.\n"));
if (advice_enabled(ADVICE_ADD_EMPTY_PATHSPEC))
advise( _("Maybe you wanted to say 'git add .'?\n"
"Turn this message off by running\n"
"\"git config advice.addEmptyPathspec false\""));
advise_if_enabled(ADVICE_ADD_EMPTY_PATHSPEC,
_("Maybe you wanted to say 'git add .'?"));
return 0;
}

View File

@ -28,6 +28,16 @@ test_expect_success 'Test of git add' '
touch foo && git add foo
'
test_expect_success 'Test with no pathspecs' '
cat >expect <<-EOF &&
Nothing specified, nothing added.
hint: Maybe you wanted to say ${SQ}git add .${SQ}?
hint: Disable this message with "git config advice.addEmptyPathspec false"
EOF
git add 2>actual &&
test_cmp expect actual
'
test_expect_success 'Post-check that foo is in the index' '
git ls-files foo | grep foo
'