Matthias Baumgarten [off-list ref] writes:
If my assumption were true, and every explicit (cli given) option
would overwrite implicitly given ones (i.e. configured options),
wouldn't
* git -c pull.ff=only pull, do a fast-forward (or merge)
This should fast-forward if it can or otherwise fail if it cannot,
right?
* git -c pull.ff=only pull --merge, force a merge commit
This would fast-forward if it can or otherwise create a merge.
Unlike "pull --no-ff", this should not "force" a merge commit.
* git -c pull.ff=only pull --rebase, force rebase
This would rebase (we may not have our own commits on top of theirs,
in which case it would end up fast-forwarding plus rebasing 0
commits).
I do not think the phrase "force rebase" makes much sense, though.