pull: don't warn if pull.ff has been set

A user who understands enough to set pull.ff does not need additional
instructions.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Alex Henrie 2020-09-24 21:50:23 -06:00 committed by Junio C Hamano
parent b3d7a52fac
commit 54200cef86
2 changed files with 21 additions and 3 deletions

View File

@ -344,8 +344,7 @@ static enum rebase_type config_get_rebase(void)
if (!git_config_get_value("pull.rebase", &value)) if (!git_config_get_value("pull.rebase", &value))
return parse_config_rebase("pull.rebase", value, 1); return parse_config_rebase("pull.rebase", value, 1);
if (opt_verbosity >= 0 && if (opt_verbosity >= 0 && !opt_ff) {
(!opt_ff || strcmp(opt_ff, "--ff-only"))) {
warning(_("Pulling without specifying how to reconcile divergent branches is\n" warning(_("Pulling without specifying how to reconcile divergent branches is\n"
"discouraged. You can squelch this message by running one of the following\n" "discouraged. You can squelch this message by running one of the following\n"
"commands sometime before your next pull:\n" "commands sometime before your next pull:\n"

View File

@ -33,11 +33,18 @@ test_expect_success 'pull.rebase not set' '
test_i18ngrep "Pulling without specifying how to reconcile" err test_i18ngrep "Pulling without specifying how to reconcile" err
' '
test_expect_success 'pull.rebase not set and pull.ff=true' '
git reset --hard c0 &&
test_config pull.ff true &&
git pull . c1 2>err &&
test_i18ngrep ! "Pulling without specifying how to reconcile" err
'
test_expect_success 'pull.rebase not set and pull.ff=false' ' test_expect_success 'pull.rebase not set and pull.ff=false' '
git reset --hard c0 && git reset --hard c0 &&
test_config pull.ff false && test_config pull.ff false &&
git pull . c1 2>err && git pull . c1 2>err &&
test_i18ngrep "Pulling without specifying how to reconcile" err test_i18ngrep ! "Pulling without specifying how to reconcile" err
' '
test_expect_success 'pull.rebase not set and pull.ff=only' ' test_expect_success 'pull.rebase not set and pull.ff=only' '
@ -59,6 +66,18 @@ test_expect_success 'pull.rebase not set and --no-rebase given' '
test_i18ngrep ! "Pulling without specifying how to reconcile" err test_i18ngrep ! "Pulling without specifying how to reconcile" err
' '
test_expect_success 'pull.rebase not set and --ff given' '
git reset --hard c0 &&
git pull --ff . c1 2>err &&
test_i18ngrep ! "Pulling without specifying how to reconcile" err
'
test_expect_success 'pull.rebase not set and --no-ff given' '
git reset --hard c0 &&
git pull --no-ff . c1 2>err &&
test_i18ngrep ! "Pulling without specifying how to reconcile" err
'
test_expect_success 'pull.rebase not set and --ff-only given' ' test_expect_success 'pull.rebase not set and --ff-only given' '
git reset --hard c0 && git reset --hard c0 &&
git pull --ff-only . c1 2>err && git pull --ff-only . c1 2>err &&