Re: [WIP] Shift rev-list enumeration from upload-pack to pack-objects
- From
Nicolas Pitre <nico@cam.org>
- Date
- Jun 7, 2009, 16:41 UTC
- Message-ID
- <alpine.LFD.2.00.0906071225060.3906@xanadu.home>
- In-Reply-To
- <c77435a80906070625i4daaa69bi134df765d7a77cdf@mail.gmail.com>
On Sun, 7 Jun 2009, Nick Edelen wrote:
Show 6 quoted lines
> I'm using the --revs flag in pack-objects, which causes it to use > get_object_list(). you'll notice, regardless of whether --thin is > set, this function still calls > mark_edges_uninteresting(revs.commits, &revs, show_edge); > which sets uninteresting objects as preferred bases, which I'd think > would create a thin pack. I could be wrong though...
Look at the arguments passed to setup_revisions(). When --thin is set, the --objects-edge flag is passed instead of --objects. Now see what effect this has on the third argument of mark_edges_uninteresting().
Show 5 quoted lines
> as I mentioned in the comment and above, it's an easy fix, but even > then I wasn't sure what to do with commit grafts. as use_thin_pack > seemed to be predominantly set on shallow interactions, I just didn't > bother seperating the cases 'normal but thick pack' and 'shallow > stuff'.
Please do separate them. In theory you could use thin packs with a relative deepening of a shallow clone. In other words, !thin and shallow is a wrong association to make.
Nicolas