summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeba Waly <heba.waly@gmail.com>2020-01-07 23:12:32 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-01-15 20:15:04 (GMT)
commitbf66db37f1e17b71e8edb93d78ec407fbc1e0989 (patch)
treef7deea5a692390a58ab180197cac01e29d5b81fa
parentd0654dc308b0ba76dd8ed7bbb33c8d8f7aacd783 (diff)
downloadgit-bf66db37f1e17b71e8edb93d78ec407fbc1e0989.zip
git-bf66db37f1e17b71e8edb93d78ec407fbc1e0989.tar.gz
git-bf66db37f1e17b71e8edb93d78ec407fbc1e0989.tar.bz2
add: use advise function to display hints
Use the advise function in advice.c to display hints to the users, as it provides a neat and a standard format for hint messages, i.e: the text is colored in yellow and the line starts by the word "hint:". Also this will enable us to control the messages using advice.* configuration variables. Signed-off-by: Heba Waly <heba.waly@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--advice.c2
-rw-r--r--advice.h1
-rw-r--r--builtin/add.c6
-rwxr-xr-xt/t3700-add.sh2
4 files changed, 8 insertions, 3 deletions
diff --git a/advice.c b/advice.c
index 249c60d..098ac0a 100644
--- a/advice.c
+++ b/advice.c
@@ -31,6 +31,7 @@ int advice_graft_file_deprecated = 1;
int advice_checkout_ambiguous_remote_branch_name = 1;
int advice_nested_tag = 1;
int advice_submodule_alternate_error_strategy_die = 1;
+int advice_add_nothing = 1;
static int advice_use_color = -1;
static char advice_colors[][COLOR_MAXLEN] = {
@@ -91,6 +92,7 @@ static struct {
{ "checkoutAmbiguousRemoteBranchName", &advice_checkout_ambiguous_remote_branch_name },
{ "nestedTag", &advice_nested_tag },
{ "submoduleAlternateErrorStrategyDie", &advice_submodule_alternate_error_strategy_die },
+ { "addNothing", &advice_add_nothing },
/* make this an alias for backward compatibility */
{ "pushNonFastForward", &advice_push_update_rejected }
diff --git a/advice.h b/advice.h
index b706780..83287b0 100644
--- a/advice.h
+++ b/advice.h
@@ -31,6 +31,7 @@ extern int advice_graft_file_deprecated;
extern int advice_checkout_ambiguous_remote_branch_name;
extern int advice_nested_tag;
extern int advice_submodule_alternate_error_strategy_die;
+extern int advice_add_nothing;
int git_default_advice_config(const char *var, const char *value);
__attribute__((format (printf, 1, 2)))
diff --git a/builtin/add.c b/builtin/add.c
index 4c38aff..57b3186 100644
--- a/builtin/add.c
+++ b/builtin/add.c
@@ -390,7 +390,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);
- fprintf(stderr, _("Use -f if you really want to add them.\n"));
+ if (advice_add_nothing)
+ advise(_("Use -f if you really want to add them.\n"));
exit_status = 1;
}
@@ -480,7 +481,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"));
- fprintf(stderr, _("Maybe you wanted to say 'git add .'?\n"));
+ if (advice_add_nothing)
+ advise( _("Maybe you wanted to say 'git add .'?\n"));
return 0;
}
diff --git a/t/t3700-add.sh b/t/t3700-add.sh
index c325167..a649805 100755
--- a/t/t3700-add.sh
+++ b/t/t3700-add.sh
@@ -326,7 +326,7 @@ test_expect_success 'git add --dry-run of an existing file output' "
cat >expect.err <<\EOF
The following paths are ignored by one of your .gitignore files:
ignored-file
-Use -f if you really want to add them.
+hint: Use -f if you really want to add them.
EOF
cat >expect.out <<\EOF
add 'track-this'