From: Elijah Newren Date: Wed, 28 Jul 2010 01:53:59 GMT Subject: Re: Configurable callbacks for missing objects (we Re: upload-pack: support subtree packing) Message-ID: In-Reply-To: <20100727185127.GD25124@worldvisions.ca> 2010/7/27 Avery Pennarun : > But I've been thinking that a really elegant way to solve the problem could > be to have a user-configurable "get the missing objects" callback.  If any > part of git that *needs* an object can't find it, it calls this callback to > go try to retrieve it (either just that one object, or it can request to > download the object recursively, ie. everything it points to). > > Then shallow clones could just auto-fill themselves if you really need a > prior version, for example. What counts as "needing" an object? Does 'git log -Sfoo' or 'git log --stat' need all missing blobs? I'd personally dislike having such commands automatically result in huge downloads, but I'd probably dislike the automatic downloading in general so perhaps I'm just a misfit for the lazy clone usecase. It's still an interesting question though -- what counts as needed?