Hi, On Tue, 18 Aug 2009, Nicolas Pitre wrote: > On Wed, 19 Aug 2009, Johannes Schindelin wrote: > > > But seriously, I miss a very important idea in this discussion: we > > control the Git source code. So we _can_ add a upload_pack feature > > that a client can ask for after the first failed attempt. > > Indeed. So what do you think about my proposal? It was included in my > first reply to this thread. Did you not talk about an extension of the archive protocol? That's not what I meant. The archive protocol can be disabled for completely different reasons than to prevent restartable clones. But you brought up an important point: shallow repositories. Now, the problem, of course, is that if you cannot even get a single ref (shallow'ed to depth 0 -- which reminds me: I think I promised to fix that, but I did not do that yet) due to intermittent network failures, you are borked, as you said. But here comes an idea: together with Nguyễn's sparse series, it is conceivable that we support a shallow & narrow clone via the upload-pack protocol (also making mithro happy). The problem with narrow clones was not the pack generation side, that is done by a rev-list that can be limited to certain paths. The problem was that we end up with missing tree objects. However, if we can make a sparse checkout, we can avoid the problem. Note: this is not well thought-through, but just a brainstorm-like answer to your ideas. Ciao, Dscho "who should shut up now and get some work done instead ;-)"