Merge branch 'jk/HEAD-symref-in-xfer-namespaces' into maint
[gitweb.git] / t / t5531-deep-submodule-push.sh
index 0f84a53146f3bac1bded4d2b11212b8ddef1bf2c..4ad059e6bedf8ddf2a0db9c20f70ee1c3cd6da15 100755 (executable)
@@ -298,6 +298,16 @@ test_expect_success 'push succeeds if submodule commit disabling recursion from
        )
 '
 
+test_expect_success 'submodule entry pointing at a tag is error' '
+       git -C work/gar/bage tag -a test1 -m "tag" &&
+       tag=$(git -C work/gar/bage rev-parse test1^{tag}) &&
+       git -C work update-index --cacheinfo 160000 "$tag" gar/bage &&
+       git -C work commit -m "bad commit" &&
+       test_when_finished "git -C work reset --hard HEAD^" &&
+       test_must_fail git -C work push --recurse-submodules=on-demand ../pub.git master 2>err &&
+       test_i18ngrep "is a tag, not a commit" err
+'
+
 test_expect_success 'push fails if recurse submodules option passed as yes' '
        (
                cd work/gar/bage &&
@@ -344,7 +354,7 @@ test_expect_success 'push succeeds if submodule has no remote and is on the firs
        git clone a a1 &&
        (
                cd a1 &&
-               git init b
+               git init b &&
                (
                        cd b &&
                        >junk &&
@@ -353,7 +363,7 @@ test_expect_success 'push succeeds if submodule has no remote and is on the firs
                ) &&
                git add b &&
                git commit -m "added submodule" &&
-               git push --recurse-submodule=check origin master
+               git push --recurse-submodules=check origin master
        )
 '