On Wed, Aug 05, 2020 at 01:06:51AM +0300, Sergey Organov wrote: > > For now, "off" is OK, but then we'll regret when "all" comes, > > because "off" would not exactly sit opposite to "all". > > IMHO, "off" does not need to be opposite for "all", as it suppresses > diff output altogether. I read --diff-merge=off as "turn /off/ diff > output for merge commits". > > Besides, "all", that I don't like either, is among "c" and "cc", all 3 > being different versions of diffs against all the parents, no? I think "all-parents" is much more descriptive than "all" (which might make you think "all merges", but it has nothing to do with that). It would make more sense if we later add the building to say "diff against parent 1" or "diff against parents 1 and 3". You might also consider whether "combined" is actually mutually exclusive with parent selection. We have focused on which parents you'd want to "-m" against. But in the most general case, you could ask for a combined-diff between parents 1 and 3 of an octopus merge. That's just coming from the angle of "what is the most general and orthogonal set of features". I think the vast majority of what anyone would want to do would be covered by doing a diff against only a single parent, and then it would almost always be the first parent. And certainly you'd need to add a bunch of code to the combined diff machinery to make it support arbitrary sets of parents. So this probably isn't that interesting a direction to go, at least for now. I'm just raising the issue now because we'll be locked into the semantics of this option, which may not be able to express the full set of what's possible (so we'd be stuck adding another option later). -Peff