Re: override merge.ff = false using --ff-only
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 22, 2013, 18:12 UTC
- Message-ID
- <7vzjvmj34e.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <CAJELnLFqzVBd57vudsCFrTNMVxETO75GT5T5NO0sDMtgHZJU6g@mail.gmail.com>
Matt McClure <matthewlmcclure@gmail.com> writes:
Show 20 quoted lines
> I naively tried to override merge.ff = false using --ff-only on the > command line. I expected that it would override the configured default > and perform a fast-forward merge. Instead, it said: > > $ git config -l | grep -F 'merge.ff' > merge.ff=false > > $ git merge --ff-only foo > fatal: You cannot combine --no-ff with --ff-only. > > On the other hand, I see that --ff works just fine in the same initial state. > > $ git merge --ff foo > Updating b869407..17b5495 > Fast-forward > ... > 4 files changed, 2 insertions(+), 5 deletions(-) > > Would it be better if --ff-only refused to merge only if the commits > themselves prevented fast-forwarding?
In general it would be better if any --ff related command line options made us ignore the configured default like merge.ff the user may have in the repository, not just --ff-only vs merge.ff combination, and your "On the other hand" demonstrates that it is the case for --ff from the command line.
I do not offhand see why --ff-only should behave differently from that expectation.