Merge branch 'hw/advice-add-nothing'
Two help messages given when "git add" notices the user gave it nothing to add have been updated to use advise() API. * hw/advice-add-nothing: add: change advice config variables used by the add API add: use advise function to display hints
This commit is contained in:
commit
daef1b300b
@ -110,4 +110,10 @@ advice.*::
|
||||
submoduleAlternateErrorStrategyDie::
|
||||
Advice shown when a submodule.alternateErrorStrategy option
|
||||
configured to "die" causes a fatal error.
|
||||
addIgnoredFile::
|
||||
Advice shown if a user attempts to add an ignored file to
|
||||
the index.
|
||||
addEmptyPathspec::
|
||||
Advice shown if a user runs the add command without providing
|
||||
the pathspec parameter.
|
||||
--
|
||||
|
4
advice.c
4
advice.c
@ -31,6 +31,8 @@ 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_ignored_file = 1;
|
||||
int advice_add_empty_pathspec = 1;
|
||||
|
||||
static int advice_use_color = -1;
|
||||
static char advice_colors[][COLOR_MAXLEN] = {
|
||||
@ -91,6 +93,8 @@ static struct {
|
||||
{ "checkoutAmbiguousRemoteBranchName", &advice_checkout_ambiguous_remote_branch_name },
|
||||
{ "nestedTag", &advice_nested_tag },
|
||||
{ "submoduleAlternateErrorStrategyDie", &advice_submodule_alternate_error_strategy_die },
|
||||
{ "addIgnoredFile", &advice_add_ignored_file },
|
||||
{ "addEmptyPathspec", &advice_add_empty_pathspec },
|
||||
|
||||
/* make this an alias for backward compatibility */
|
||||
{ "pushNonFastForward", &advice_push_update_rejected }
|
||||
|
2
advice.h
2
advice.h
@ -31,6 +31,8 @@ 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_ignored_file;
|
||||
extern int advice_add_empty_pathspec;
|
||||
|
||||
int git_default_advice_config(const char *var, const char *value);
|
||||
__attribute__((format (printf, 1, 2)))
|
||||
|
@ -406,7 +406,10 @@ 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_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\""));
|
||||
exit_status = 1;
|
||||
}
|
||||
|
||||
@ -507,7 +510,10 @@ 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_empty_pathspec)
|
||||
advise( _("Maybe you wanted to say 'git add .'?\n"
|
||||
"Turn this message off by running\n"
|
||||
"\"git config advice.addEmptyPathspec false\""));
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -326,7 +326,9 @@ 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.
|
||||
hint: Turn this message off by running
|
||||
hint: "git config advice.addIgnoredFile false"
|
||||
EOF
|
||||
cat >expect.out <<\EOF
|
||||
add 'track-this'
|
||||
|
@ -158,7 +158,9 @@ test_expect_success 'submodule add to .gitignored path fails' '
|
||||
cat <<-\EOF >expect &&
|
||||
The following paths are ignored by one of your .gitignore files:
|
||||
submod
|
||||
Use -f if you really want to add them.
|
||||
hint: Use -f if you really want to add them.
|
||||
hint: Turn this message off by running
|
||||
hint: "git config advice.addIgnoredFile false"
|
||||
EOF
|
||||
# Does not use test_commit due to the ignore
|
||||
echo "*" > .gitignore &&
|
||||
|
Loading…
Reference in New Issue
Block a user