apply: register conflicted stages to the index
[gitweb.git] / t / t7406-submodule-update.sh
index 5b97222c48a15dff018cb814ca14c59ed0ee91a2..dcb195b4cf67af3cf5ce94d0f5ca75bf94664b9a 100755 (executable)
@@ -619,4 +619,21 @@ test_expect_success 'submodule add properly re-creates deeper level submodules'
        )
 '
 
+test_expect_success 'submodule update properly revives a moved submodule' '
+       (cd super &&
+        git commit -am "pre move" &&
+        git status >expect&&
+        H=$(cd submodule2; git rev-parse HEAD) &&
+        git rm --cached submodule2 &&
+        rm -rf submodule2 &&
+        mkdir -p "moved/sub module" &&
+        git update-index --add --cacheinfo 160000 $H "moved/sub module" &&
+        git config -f .gitmodules submodule.submodule2.path "moved/sub module"
+        git commit -am "post move" &&
+        git submodule update &&
+        git status >actual &&
+        test_cmp expect actual
+       )
+'
+
 test_done