[PATCH 2/2] list-objects: only look at cmdline trees with edge_hint

2014-01-20 Thread Jeff King
When rev-list is given a command-line like: git rev-list --objects $commit --not --all the most accurate answer is the difference between the set of objects reachable from $commit and the set reachable from all of the existing refs. However, we have not historically provided that answer,

Re: [PATCH 2/2] list-objects: only look at cmdline trees with edge_hint

2014-01-20 Thread Duy Nguyen
On Tue, Jan 21, 2014 at 4:32 AM, Jeff King p...@peff.net wrote: This patch therefore ties the extra tree examination to the revs-edge_hint flag; it is the presence of that flag that makes the tradeoff worthwhile. Here is output from the p0001-rev-list showing the improvement in performance:

Re: [PATCH 2/2] list-objects: only look at cmdline trees with edge_hint

2014-01-20 Thread Jeff King
On Tue, Jan 21, 2014 at 06:57:08AM +0700, Duy Nguyen wrote: You must have so much fun (or headache, depending on your view) with the variety of repos on github :) It's fun on days like these when the solution is fairly straightforward. :) + if (revs-edge_hint) { + for