From: Johan Herland Date: Mon, 13 Jul 2009 12:28:43 GMT Subject: Re: Submodule using different repository URLs Message-ID: <200907131428.43652.johan@herland.net> In-Reply-To: <64652870-CF95-49A7-920A-0F9A6C202B40@petervoss.org> On Monday 13 July 2009, Peter Voss wrote: > On 13.07.2009, at 12:59, Johan Herland wrote: > > You might be able to pull this off using relative submodule URLs. > > That's a good hint. Unfortunately I can't use this to go up 2 > directories. I.e. I can't get from > git@github.com:xxx/mymodule.git > to > git@github.com:yyy/foo.git > > Using the relative URL ../../yyy/foo.git leads to the result: > Clone of 'git@github.com:xxx/yyy/foo.git' into submodule path 'foo' > failed > > So I basically cannot replace the xxx part. This is due to a small bug in git-submodule.sh. In the resolve_relative_url() function, when repeatedly unwrapping '../'s from $url in the while loop, the line remoteurl="${remoteurl%/*}" removes everything _after_ the last slash, which does not work for the git@github.com:xxx part of your URL. This should be relatively easy to fix, although maybe not as straightforwardly trivial as it might seem at first sight. I don't have the time to look into this now, so feel free to take a stab at it. Have fun! :) ...Johan -- Johan Herland, www.herland.net