Thomas Rast wrote: > The function resolve_relative_url was not prepared to deal with an > scp-style origin 'user@host:path' in the case where 'path' is only a > single component. Fix this by extending the logic that strips one > path component from the $remoteurl. The above description does not mention that the relative URL in question is "../otherpath". Anyway, I think it's a great idea; thanks for doing it! > --- a/git-submodule.sh > +++ b/git-submodule.sh [...] > @@ -37,12 +37,24 @@ resolve_relative_url () [...] > - remoteurl="${remoteurl%/*}" > + case "$remoteurl" in > + */*) > + remoteurl="${remoteurl%/*}" > + ;; > + *:*) > + remoteurl="${remoteurl%:*}" > + sep=: > + ;; What happens to url = ssh://example.com:1234 url = ftp://ftp.example.com url = /local/path/with/a/colon:in:it url = git://example.com/path/with/a/colon:in:it > + *) > + die "cannot strip one component off url '$remoteurl'" > + ;; url = simple.subdir.of.cwd ? (Not a rhetorical question; I'm only curious. If the ftp example is valid then the existing code already would not cope well with it.) > --- a/t/t7400-submodule-basic.sh > +++ b/t/t7400-submodule-basic.sh Nice. -- 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