On Mon, 5 Feb 2018 15:54:59 -0800 Stefan Beller <sbeller@xxxxxxxxxx> wrote: > From: Jonathan Nieder <jrnieder@xxxxxxxxx> > > Signed-off-by: Stefan Beller <sbeller@xxxxxxxxxx> > Signed-off-by: Jonathan Nieder <jrnieder@xxxxxxxxx> > --- > sha1_file.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) Thanks - I can see that this has been a lot of work, and it brings a lot of benefit. Among other things, this will probably allow me to remove the "fetch_if_missing" global variable that we need to set and reset in the partial clone series, replacing it with a setting in either the repo or the object store (and when fetching a missing object, first cloning the repo/store and then setting that setting, so that objects are not recursively fetched). If we're planning to split the series up for merging in batches (which, as a reviewer, I'm very much in favor of), I think this is a good stopping point for the first batch, so I'll stop my review here for now. After these 38 patches, the net benefit is a better position of the packed object variables (in struct repository) and permitting the reading of loose objects in any repository. (Permitting the reading of any object in any repository, I see, will only come later in patch 74.)