pull: make pull.ff=true override merge.ff
commiteb8dc05c3d364174a6b694e2850ffd6cfe32c6d3
authorPaul Tan <pyokagan@gmail.com>
Mon, 18 May 2015 13:45:41 +0000 (18 21:45 +0800)
committerJunio C Hamano <gitster@pobox.com>
Mon, 18 May 2015 18:22:27 +0000 (18 11:22 -0700)
treef462cc65dabea04bdf6e6ea0441bbca279899ede
parent3d4a3ffe64162b45ae7c991fc60623ecb4678cfd
pull: make pull.ff=true override merge.ff

Since b814da8 (pull: add pull.ff configuration, 2014-01-15), running
git-pull with the configuration pull.ff=false or pull.ff=only is
equivalent to passing --no-ff and --ff-only to git-merge. However, if
pull.ff=true, no switch is passed to git-merge. This leads to the
confusing behavior where pull.ff=false or pull.ff=only is able to
override merge.ff, while pull.ff=true is unable to.

Fix this by adding the --ff switch if pull.ff=true, and add a test to
catch future regressions.

Furthermore, clarify in the documentation that pull.ff overrides
merge.ff.

Signed-off-by: Paul Tan <pyokagan@gmail.com>
Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/config.txt
git-pull.sh
t/t7601-merge-pull-config.sh