Am 13.02.2016 um 00:39 schrieb Stefan Beller: > @@ -289,4 +296,39 @@ test_git_path GIT_COMMON_DIR=bar config bar/config > test_git_path GIT_COMMON_DIR=bar packed-refs bar/packed-refs > test_git_path GIT_COMMON_DIR=bar shallow bar/shallow > > +test_submodule_relative_url "(null)" "../foo/bar" "../sub/a/b/c" "../foo/sub/a/b/c" > +test_submodule_relative_url "../../../" "../foo/bar" "../sub/a/b/c" "../../../../foo/sub/a/b/c" > +test_submodule_relative_url "(null)" "../foo/bar" "../submodule" "../foo/submodule" > +test_submodule_relative_url "../" "../foo/bar" "../submodule" "../../foo/submodule" > +test_submodule_relative_url "(null)" "../foo/submodule" "../submodule" "../foo/submodule" > +test_submodule_relative_url "../" "../foo/submodule" "../submodule" "../../foo/submodule" > +test_submodule_relative_url "(null)" "../foo" "../submodule" "../submodule" > +test_submodule_relative_url "../" "../foo" "../submodule" "../../submodule" > +test_submodule_relative_url "(null)" "./foo/bar" "../submodule" "foo/submodule" > +test_submodule_relative_url "../" "./foo/bar" "../submodule" "../foo/submodule" > +test_submodule_relative_url "(null)" "./foo" "../submodule" "submodule" > +test_submodule_relative_url "../" "./foo" "../submodule" "../submodule" > +test_submodule_relative_url "(null)" "//somewhere else/repo" "../subrepo" "//somewhere else/subrepo" > +test_submodule_relative_url "(null)" "/u//trash directory.t7406-submodule-update/subsuper_update_r" "../subsubsuper_update_r" "/u//trash directory.t7406-submodule-update/subsubsuper_update_r" > +test_submodule_relative_url "(null)" "/u//trash directory.t7406-submodule-update/super_update_r2" "../subsuper_update_r" "/u//trash directory.t7406-submodule-update/subsuper_update_r" > +test_submodule_relative_url "(null)" "/u/trash directory.t3600-rm/." "../." "/u/trash directory.t3600-rm/." > +test_submodule_relative_url "(null)" "/u/trash directory.t3600-rm" "./." "/u/trash directory.t3600-rm/." > +test_submodule_relative_url "(null)" "/u/trash directory.t7400-submodule-basic/addtest" "../repo" "/u/trash directory.t7400-submodule-basic/repo" > +test_submodule_relative_url "../" "/u/trash directory.t7400-submodule-basic/addtest" "../repo" "/u/trash directory.t7400-submodule-basic/repo" > +test_submodule_relative_url "(null)" "/u/trash directory.t7400-submodule-basic" "./å äö" "/u/trash directory.t7400-submodule-basic/å äö" > +test_submodule_relative_url "(null)" "/u/trash directory.t7403-submodule-sync/." "../submodule" "/u/trash directory.t7403-submodule-sync/submodule" > +test_submodule_relative_url "(null)" "/u/trash directory.t7407-submodule-foreach/submodule" "../submodule" "/u/trash directory.t7407-submodule-foreach/submodule" > +test_submodule_relative_url "(null)" "/u/trash directory.t7409-submodule-detached-worktree/home2/../remote" "../bundle1" "/u/trash directory.t7409-submodule-detached-worktree/home2/../bundle1" > +test_submodule_relative_url "(null)" "/u/trash directory.t7613-merge-submodule/submodule_update_repo" "./." "/u/trash directory.t7613-merge-submodule/submodule_update_repo/." The tests with absolute paths all fail on Windows. The reason is that git.exe sees mangled paths and 'git submodule--helper resolve-relative-url-test' produces mangled paths (that begins with a drive letter), whereas the test script expects POSIX paths. The pattern I currently use to fix this is test_submodule_relative_url "(null)" "$PWD/addtest" "../repo" "$(pwd)/repo" (In our test scripts, $PWD is a POSIX style path and $(pwd) is a Windows style path). With this change, the penultimate case above still fails because the 'home2/..' gets lost somewhere in the actual output, which I still have to debug. The two cases beginning with '/u//' cannot be tested on Windows. Are they important? Are the doubled slashes intentional? > +test_submodule_relative_url "(null)" "file:///tmp/repo" "../subrepo" "file:///tmp/subrepo" > +test_submodule_relative_url "(null)" "foo/bar" "../submodule" "foo/submodule" > +test_submodule_relative_url "../" "foo/bar" "../submodule" "../foo/submodule" > +test_submodule_relative_url "(null)" "foo" "../submodule" "submodule" > +test_submodule_relative_url "../" "foo" "../submodule" "../submodule" > +test_submodule_relative_url "(null)" "helper:://hostname/repo" "../subrepo" "helper:://hostname/subrepo" > +test_submodule_relative_url "(null)" "ssh://hostname/repo" "../subrepo" "ssh://hostname/subrepo" > +test_submodule_relative_url "(null)" "ssh://hostname:22/repo" "../subrepo" "ssh://hostname:22/subrepo" > +test_submodule_relative_url "(null)" "user@host:path/to/repo" "../subrepo" "user@host:path/to/subrepo" > +test_submodule_relative_url "(null)" "user@host:repo" "../subrepo" "user@host:subrepo" > + > 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