From: Junio C Hamano Date: Mon, 01 Jul 2013 16:43:13 GMT Subject: Re: [PATCH] merge: allow using --no-ff and --ff-only at the same time Message-ID: <7va9m6i63i.fsf@alter.siamese.dyndns.org> In-Reply-To: <20130701161009.GI17269@suse.cz> Miklos Vajna writes: > OK, so if I get it right, the problem is that users got used to > that the --ff-only not only means a precondition for the merge, > but also means "either don't create a merge commit or fail", while > my patch would change this second behaviour. It is not just "users got used to". "We do not want to create a merge commit with this operation." is what "--ff-only" means from the day one [*1*]. For a merge not to create an extra merge commit, the other history has to be a proper descendant, but that "precondition" is a mere logical consequence of the ultimate goal of the mode. > I could imagine then new switches, like 'git merge --pre=ff > --update=no-ff" could provide these, though I'm not sure if it makes > sense to add such generic switches till the only user is "ff". Yes, that is why I said "if one were designing it from scratch, I could see..." in a very weak form. [Footnote] *1* 13474835 (Teach 'git merge' and 'git pull' the option --ff-only, 2009-10-29) and also $gmane/107768 whose documentation part says: "Refuse to merge unless the merge is resolved as a fast-forward."