> In push_submodule(), because we do not actually need access to objects
> in the submodule, do not invoke add_submodule_odb().
> (for_each_remote_ref_submodule() does not require access to those
> objects, and the actual push is done by spawning another process,
> which handles object access by itself.)
The code looks good - my analysis is the same as that in my review of
the previous version [1].
Can you mention, in the commit message, the tests that exercise the
functionality here (and say that they still pass)?
[1]
https://public-inbox.org/git/20181011230028.200488-1-jonathanta...@google.com/
>
> Signed-off-by: Stefan Beller
> ---
> submodule.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/submodule.c b/submodule.c
> index 7305ae2e10..e623e6bf7f 100644
> --- a/submodule.c
> +++ b/submodule.c
> @@ -1024,9 +1024,6 @@ static int push_submodule(const char *path,
> const struct string_list *push_options,
> int dry_run)
> {
> - if (add_submodule_odb(path))
> - return 1;
> -
> if (for_each_remote_ref_submodule(path, has_remote, NULL) > 0) {
> struct child_process cp = CHILD_PROCESS_INIT;
> argv_array_push(, "push");
> --
> 2.19.0
>