On Mon, Nov 23, 2020 at 03:03:07PM -0700, Alex Henrie wrote: > > The default has continued to be merging. If we were going to switch that > > to bailing out and doing nothing with a warning, I agree that doing so > > only in the non-fast-forward case would be much better (because in that > > case, all three modes have the same result). > > I'd be fine with making fast-forward-only the default. But then again, > some users like to set pull.ff=no, which creates a merge commit even > when fast-forwarding is possible. The existence of that workflow might > be a good reason to require the user to always be explicit. Good point. I was thinking there was no option the users could set where they'd be disappointed by a fast-forward, and for all other cases we'd stop and ask the user to tell us more explicitly what they want. But you're right that pull.ff=no is an exception there. It might still be OK to allow it by default, though as we have always allowed a fast-forward merge by default. So this would be a strict tightening from the long-standing behavior of "if fast-forward, do that; otherwise, merge" to "if fast-forward, do that; otherwise punt". Anybody who wants pull.ff=no already had to configure it. -Peff