Stefan Beller <sbeller@xxxxxxxxxx> writes: > I think I can reproduce the problem. A regression test (which currently fails) > could look like Thanks. I however do not think this is a regression. Changes around 0656781f (mv: update the path entry in .gitmodules for moved submodules, 2013-08-06) did introduce "git mv dir1 dir2" when 'dir1' is a submodule, but I do not think it went beyond that. I do not see any effort to treat a submodule that is discovered by scanning a directory that was given from the command line, i.e. prepare_move_submodule() is not called for them, and the entries in the submodule_gitfile[] array that correspond to them are explicitly set to NULL in the loop. > diff --git a/t/t7001-mv.sh b/t/t7001-mv.sh > index 4008fae..3b96a9a 100755 > --- a/t/t7001-mv.sh > +++ b/t/t7001-mv.sh > @@ -292,6 +292,9 @@ test_expect_success 'setup submodule' ' > echo content >file && > git add file && > git commit -m "added sub and file" && > + mkdir -p deep/directory/hierachy && > + git submodule add ./. deep/directory/hierachy/sub && > + git commit -m "added another submodule" && > git branch submodule > ' > > @@ -475,4 +478,14 @@ test_expect_success 'mv -k does not accidentally > destroy submodules' ' > git checkout . > ' > > +test_expect_failure 'moving a submodule in nested directories' ' > + ( > + cd deep && > + git mv directory ../ && > + git status > + # currently git status exits with 128 > + # fatal: Not a git repository: > directory/hierachy/sub/../../../../.git/modules/deep/directory/hierachy/sub > + ) > +' > + > test_done -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html