]> git.ipfire.org Git - thirdparty/git.git/commitdiff
add: use advise_if_enabled for ADVICE_ADD_IGNORED_FILE
authorRubén Justo <rjusto@gmail.com>
Sat, 30 Mar 2024 14:07:27 +0000 (15:07 +0100)
committerJunio C Hamano <gitster@pobox.com>
Sun, 31 Mar 2024 00:55:00 +0000 (17:55 -0700)
Since b3b18d1621 (advice: revamp advise API, 2020-03-02), we can use
advise_if_enabled() to display an advice.  This API encapsulates three
actions:
1.- checking the visibility of the advice

2.- displaying the advice when appropriate

3.- displaying instructions on how to disable the advice, when
    appropriate

The code we have in builtin/add.c to display the ADVICE_ADD_IGNORED_FILE
advice, is doing these three things.  However, the instructions
displayed on how to disable the hint are not shown in the normalized way
that advise_if_enabled() introduced.  This may cause distraction.

There is no reason not to use the new API here.  On the contrary, by
using it we gain simplicity in the code and avoid possible distractions.

For these reasons, use the newer advise_if_enabled() machinery to show
the ADVICE_ADD_IGNORED_FILE advice, and don't bother checking the
visibility or displaying the instruction on how to disable the advice.

Signed-off-by: Rubén Justo <rjusto@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/add.c
t/t3700-add.sh
t/t7400-submodule-basic.sh

index ada7719561f0ec324238e613a9788a5f5a2981eb..092d3120b5d99c3729946cb00cd40b3fef58f4da 100644 (file)
@@ -328,10 +328,8 @@ static int add_files(struct dir_struct *dir, int flags)
                fprintf(stderr, _(ignore_error));
                for (i = 0; i < dir->ignored_nr; i++)
                        fprintf(stderr, "%s\n", dir->ignored[i]->name);
-               if (advice_enabled(ADVICE_ADD_IGNORED_FILE))
-                       advise(_("Use -f if you really want to add them.\n"
-                               "Turn this message off by running\n"
-                               "\"git config advice.addIgnoredFile false\""));
+               advise_if_enabled(ADVICE_ADD_IGNORED_FILE,
+                                 _("Use -f if you really want to add them."));
                exit_status = 1;
        }
 
index f23d39f0d52ec6f5035acfb029550babc67859da..76c2c9e7b068a559545df019b362629089f37907 100755 (executable)
@@ -370,8 +370,7 @@ cat >expect.err <<\EOF
 The following paths are ignored by one of your .gitignore files:
 ignored-file
 hint: Use -f if you really want to add them.
-hint: Turn this message off by running
-hint: "git config advice.addIgnoredFile false"
+hint: Disable this message with "git config advice.addIgnoredFile false"
 EOF
 cat >expect.out <<\EOF
 add 'track-this'
index 00c1f1aab1304c127a5dccdaeff62d7213b7a9e5..5c4a89df5c81dcd5559d56de5924aa0140cb6772 100755 (executable)
@@ -212,8 +212,7 @@ test_expect_success 'submodule add to .gitignored path fails' '
                The following paths are ignored by one of your .gitignore files:
                submod
                hint: Use -f if you really want to add them.
-               hint: Turn this message off by running
-               hint: "git config advice.addIgnoredFile false"
+               hint: Disable this message with "git config advice.addIgnoredFile false"
                EOF
                # Does not use test_commit due to the ignore
                echo "*" > .gitignore &&