Arnaud Morin <arnaud.morin@xxxxxxxxx> writes: > Without this patch, that's even worst, consistency is broken. > Let me explain. > > With your history example: > > ---o---o---M---o---o---W---o---o---M---o--- branch > \ > o---o---o---M---o--- master > > # WITHOUT PATCH > If we imagine that master is having more commits count than branch. > The result of rev-list will be like you described: > $ git rev-list --left-right --cherry-pick branch...master > <M > <W > > In other words, it's showing both W and M. So, at least they cancel out and the reader can tell that the net effect was none --- that is "sort of understandable" result. > BUT, if we imagine now that master is having less commits count than branch. > $ git rev-list --left-right --cherry-pick branch...master > <W > > It's only showing W! Which is what I felt misleading. > # WITH PATCH > With the patch, everything is consistent, and only W is kept in ouptut, > no matter the size of history: > $ git.p rev-list --left-right --cherry-pick branch...master > <W So with the patch, the former case is made the same as the latter misleading result, which would mean that they are consistently misleading? I guess that it is better to be misleading all the time than being "sort of understandable" half the time and misleading the rest of time. At least that is consistent. Thanks.