On Wed, Jul 12, 2017 at 5:01 PM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: > These footnotes don't answer the question that I really have: why did > this use add_submodule_odb in the first place? oh, I forgot to put that down: presumably add_submodule_odb was used because it was available back then? Note the dates! > E.g. did the ref iteration code require access to the object store > previously and stop requiring it later? No. See [1], it was overkill since the beginning of time. >> - if (add_submodule_odb(path)) >> + int code; >> + >> + if (!is_submodule_populated_gently(path, &code)) > > Should this examine the code to distinguish between hard errors > (e.g. "Error reading .git") and a missing repository? add_submodule_odb does neither, so I think this is best kept without additional checks. Thanks!