On Mon, 23 Oct 2006, Josh Triplett wrote:
Or have I misunderstood the case you have concerns about? Why would the
"nice" format incur additional cost?
Try it. The default "extreme" simplification is a _hell_ of a lot faster
than doing the full history.
[torvalds@g5 linux]$ time git-rev-list --full-history --parents HEAD -- kernel/sched.c >/dev/null
real 0m4.660s
user 0m4.612s
sys 0m0.044s
[torvalds@g5 linux]$ time git-rev-list --parents HEAD -- kernel/sched.c >/dev/null
real 0m1.684s
user 0m1.680s
sys 0m0.004s
and the "nice" thing will be much slower still: just trying to figure out
whether a commit is a parent of another commit is expensive. Doing so for
_each_ merge is more expensive still. I think it's O(n^3), but what do I
know..
Linus