From: Andreas Ericsson Date: Fri, 25 Nov 2005 08:42:16 GMT Subject: Re: Linux 2.6.15-rc2 Message-ID: <4386CE68.1020200@op5.se> In-Reply-To: <200511242151.00162.tomlins@cam.org> Ed Tomlinson wrote: > On Thursday 24 November 2005 14:52, Nick Hengeveld wrote: > >>On Thu, Nov 24, 2005 at 10:37:15AM -0800, Linus Torvalds wrote: >> >> >>>I just repacked and updated it now, so how http should work too, although >>>inefficiently (because it will get a whole new pack - just one of the >>>disadvantages of the non-native protocols). >> >>There's room to improve on that particular inefficiency. The http >>commit walker could use Range: headers to fetch loose objects directly >>from inside a pack if it didn't make sense to fetch the entire pack. >>For this to work, pack fetches would need to be deferred until the >>entire tree had been walked, and the commit walker could decide whether >>to fetch the pack or loose objects based on the percentage of packed >>objects it needed to fetch. It would also need to fetch all >>tag/commit/tree objects using ranges to be able to fully walk the tree. > > > Alternately, when creating a new archive the client could ask the server > what protocols are active. It could then use the best one for the clone and > update the .git/origin files with the optimal one for incremental pulls. > This would only work with the git protocol, and since that's the fastest protocol (theoretically that is, Pasky seems to have gotten other figures but I'm not sure I believe those) it should really only ever return itself which wouldn't make much sense. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231