On Thu, 9 Aug 2007, Sean wrote: > > This makes things _much_ better, however the final commit in the > test script still shows a lot of user time: > > ## time git commit -q -m 'buurrrrn' -a > real 0m2.299s > user 0m1.065s > sys 0m1.317s > > ## time git commit -q -m 'hurry' 50/500 > real 0m16.944s > user 0m15.466s > sys 0m1.133s In the case where we do a partial commit (never mind that it's all the changes: when you give a path limiter, it's "partial"), "git commit" one goes through another path, and triggers the same issue with git read-tree --index-output=tmp-index -i -m HEAD which has the same O(n**2) issue (except it uses "unpack_trees()" rather than "read_tree()", so Junio's patch does nothing for it). So "builtin-read-tree.c" (or rather unpack-trees.c) would need the same kind of logic. Linus - 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