Merge branch 'en/pull-conflicting-options' into maint
commitb20f67a65939a9c8f43354d70ab6000f615d1804
authorJunio C Hamano <gitster@pobox.com>
Tue, 12 Oct 2021 20:51:36 +0000 (12 13:51 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 12 Oct 2021 20:51:36 +0000 (12 13:51 -0700)
treed248b20f74bc89f15670809a7f55a97f824679d5
parent6d71443d8e6da9e3d412f91b5f5e9dd95a058ed1
parent6f843a3355ee590dfe09eb90679051e75fadf675
Merge branch 'en/pull-conflicting-options' into maint

"git pull" had various corner cases that were not well thought out
around its --rebase backend, e.g. "git pull --ff-only" did not stop
but went ahead and rebased when the history on other side is not a
descendant of our history.  The series tries to fix them up.

* en/pull-conflicting-options:
  pull: fix handling of multiple heads
  pull: update docs & code for option compatibility with rebasing
  pull: abort by default when fast-forwarding is not possible
  pull: make --rebase and --no-rebase override pull.ff=only
  pull: since --ff-only overrides, handle it first
  pull: abort if --ff-only is given and fast-forwarding is impossible
  t7601: add tests of interactions with multiple merge heads and config
  t7601: test interaction of merge/rebase/fast-forward flags and options
Documentation/git-pull.txt
Documentation/merge-options.txt
advice.h
builtin/merge.c
t/t4013-diff-various.sh
t/t6402-merge-rename.sh