Junio C Hamano <gitster@xxxxxxxxx> writes: > Jonathan Nieder <jrnieder@xxxxxxxxx> writes: > >> As an orthogonal point, I wonder whether we can start the multi-step >> migration of making --no-commit imply --no-ff by default: >> >> 1. Act as --ff when --no-commit is passed without --ff or --no-ff >> (the state today) > > which means "--no-commit controls whether a new commit is created or > not and nothing else, and because --ff is the default for merge, > merging a true descendant will fast-forward". > >> 5. Refuse to perform a fast-forward merge with --no-commit is passed >> without --ff or --no-ff, just as though --no-ff were passed. > > Is that a good endgame, though? Ah, I was confused by "refuse to perform". You were not trying to make the command fail outright without doing anything. Yes, that would be a good endgame, I would think. I am not sure if the transition would be smooth, though.