On Jan 7, 2011, at 5:00 PM, Junio C Hamano wrote: > Kevin Ballard <kevin@xxxxxx> writes: > >> Is there any rationale for this behavior? > > Not a rationale, but an explanation is that most of the time we walk the > history and sorting by date is the first thing that needs to be done, and > the --no-walk option was an afterthought that was tucked in. > > I suspect that a three-liner patch to revision.c:prepare_revision_walk() > would give you what you want. Instead of calling insert-by-date, you > append to the tail when revs->no_walk is given, or something. It almost works, but not quite. My inclination is to say `git rev-list --no-walk A B C` should emit A B C in that order. Implemented this way, `git rev-list --no-walk ^HEAD~3 HEAD` emits commits in the wrong order, and I can't figure out how to change that. If I implement `git rev-list --no-walk A B C` to emit C B A instead, then the test for `git cherry-pick --stdin` fails (t3508), and I don't know why. -Kevin Ballard -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html