summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Voigt <hvoigt@hvoigt.net>2017-09-15 11:50:21 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-09-17 00:37:34 (GMT)
commitc514167df255f7d67bb08646b95e2afbb15ac787 (patch)
treee6df26302fbffff50b5429a3e917951dc1145f32
parent94c9fd268d4287f6fbfef84793288479905a7e48 (diff)
downloadgit-c514167df255f7d67bb08646b95e2afbb15ac787.zip
git-c514167df255f7d67bb08646b95e2afbb15ac787.tar.gz
git-c514167df255f7d67bb08646b95e2afbb15ac787.tar.bz2
add test for bug in git-mv for recursive submodules
When using git-mv with a submodule it will detect that and update the paths for its configurations (.gitmodules, worktree and gitfile). This does not work for recursive submodules where a user renames the root submodule. We discovered this fact when working on on-demand fetch for renamed submodules. Lets add a test to document. Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xt/t7001-mv.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/t/t7001-mv.sh b/t/t7001-mv.sh
index e365d1f..cbc5fb3 100755
--- a/t/t7001-mv.sh
+++ b/t/t7001-mv.sh
@@ -491,4 +491,29 @@ test_expect_success 'moving a submodule in nested directories' '
test_cmp actual expect
'
+test_expect_failure 'moving nested submodules' '
+ git commit -am "cleanup commit" &&
+ mkdir sub_nested_nested &&
+ (cd sub_nested_nested &&
+ touch nested_level2 &&
+ git init &&
+ git add . &&
+ git commit -m "nested level 2"
+ ) &&
+ mkdir sub_nested &&
+ (cd sub_nested &&
+ touch nested_level1 &&
+ git init &&
+ git add . &&
+ git commit -m "nested level 1"
+ git submodule add ../sub_nested_nested &&
+ git commit -m "add nested level 2"
+ ) &&
+ git submodule add ./sub_nested nested_move &&
+ git commit -m "add nested_move" &&
+ git submodule update --init --recursive &&
+ git mv nested_move sub_nested_moved &&
+ git status
+'
+
test_done