diff mbox series

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

Message ID 20200925035023.8771-1-alexhenrie24@gmail.com (mailing list archive)
State Accepted
Commit b5ddf0cf8be78b4d517492d23b63d186825baab4
Headers show
Series pull: don't warn if pull.ff has been set | expand

Commit Message

Alex Henrie Sept. 25, 2020, 3:50 a.m. UTC
A user who understands enough to set pull.ff does not need additional
instructions.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
---
 builtin/pull.c               |  3 +--
 t/t7601-merge-pull-config.sh | 21 ++++++++++++++++++++-
 2 files changed, 21 insertions(+), 3 deletions(-)

Comments

Denton Liu Sept. 26, 2020, 5:41 a.m. UTC | #1
Hi Alex, thanks for doing this.

On Thu, Sep 24, 2020 at 09:50:23PM -0600, Alex Henrie wrote:
> A user who understands enough to set pull.ff does not need additional
> instructions.
> 
> Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>

Reviewed-by: Denton Liu <liu.denton@gmail.com>
diff mbox series

Patch

diff --git a/builtin/pull.c b/builtin/pull.c
index 015f6ded0b..425950f469 100644
--- a/builtin/pull.c
+++ b/builtin/pull.c
@@ -344,8 +344,7 @@  static enum rebase_type config_get_rebase(void)
 	if (!git_config_get_value("pull.rebase", &value))
 		return parse_config_rebase("pull.rebase", value, 1);
 
-	if (opt_verbosity >= 0 &&
-	    (!opt_ff || strcmp(opt_ff, "--ff-only"))) {
+	if (opt_verbosity >= 0 && !opt_ff) {
 		warning(_("Pulling without specifying how to reconcile divergent branches is\n"
 			"discouraged. You can squelch this message by running one of the following\n"
 			"commands sometime before your next pull:\n"
diff --git a/t/t7601-merge-pull-config.sh b/t/t7601-merge-pull-config.sh
index 0f97828cd0..c5c4ea5fc0 100755
--- a/t/t7601-merge-pull-config.sh
+++ b/t/t7601-merge-pull-config.sh
@@ -33,11 +33,18 @@  test_expect_success 'pull.rebase not set' '
 	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' '
 	git reset --hard c0 &&
 	test_config pull.ff false &&
 	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' '
@@ -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_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' '
 	git reset --hard c0 &&
 	git pull --ff-only . c1 2>err &&