On 04/11, Stefan Beller wrote: > This was an oversight when working on the working tree modifying commands > recursing into submodules. > > To test for uninitialized submodules, introduce another submodule, that is > uninitialized in the actual tests. By adding it to the branch "add_sub1", > which is the starting point of all other branches, we have wide coverage. > > Signed-off-by: Stefan Beller <sbeller@xxxxxxxxxx> > --- > submodule.c | 3 +++ > t/lib-submodule-update.sh | 1 + > 2 files changed, 4 insertions(+) > > diff --git a/submodule.c b/submodule.c > index c52d6634c5..2fa42519a4 100644 > --- a/submodule.c > +++ b/submodule.c > @@ -1332,6 +1332,9 @@ int submodule_move_head(const char *path, > struct child_process cp = CHILD_PROCESS_INIT; > const struct submodule *sub; > > + if (!is_submodule_initialized(path)) > + return 0; > + > sub = submodule_from_path(null_sha1, path); > > if (!sub) > diff --git a/t/lib-submodule-update.sh b/t/lib-submodule-update.sh > index fb4f7b014e..22dd9e060c 100755 > --- a/t/lib-submodule-update.sh > +++ b/t/lib-submodule-update.sh > @@ -73,6 +73,7 @@ create_lib_submodule_repo () { > > git checkout -b "add_sub1" && > git submodule add ../submodule_update_sub1 sub1 && > + git submodule add ../submodule_update_sub1 uninitialized_sub && The 'submodule add' command will make the submodule active, so you'll need to add in a line to subsequently make the submodule inactive for this to work, unless you do in at a later point in time. > git config -f .gitmodules submodule.sub1.ignore all && > git config submodule.sub1.ignore all && > git add .gitmodules && > -- > 2.12.2.603.g7b28dc31ba > -- Brandon Williams