
On 14 February 2013 05:30, Rene Rivera <grafikrobot@gmail.com> wrote:
Sure.. But this is one of those cases where the git design is less than ideal (not the svn does any better in this regard). In an ideal world the subrepo references would have a list of alternatives for protocols and client code could pick the correct one to match the protocol the client prefers.
This information shouldn't really be stored in the repo, but externally (since it can change with both time and location). I'm not sure if it's what you're looking for, and it certainly isn't ideal, but git does have a configuration option to map urls to different locations. Details are at: http://www.kernel.org/pub/software/scm/git/docs/git-clone.html#URLS You need to scroll down a tad, look for 'insteadOf'. As with all git configuration it's a bit of a pain, as it can't be done automatically. But you maybe could write a script to add the necessary configuration to a local clone, or add it to the user's .gitconfig file. I actually haven't tried it yet, but I'm hoping I can use it to speed up a script I have which fetches from the same repo to multiple local clones.