Hi Santi,
On 13.07.2009, at 12:20, Santi Béjar wrote:
2009/7/13 Peter Voss <info@xxxxxxxxxxxxx>:
Hi,
I want to use the git submodule feature to move part of my code to a
different repository at github.
The issue is that developers should use different repository URLs
for the
submodule depending on whether they have commit rights or not.
At the beginning I was using the public URL to set-up the submodule:
git submodule add git://github.com/x/mymodule.git mymodule
The issue is that some developers are working behind a firewall
that blocks
the git protocol. These could only use the git@xxxxxxxxxx:x/
mymodule.git URL
to get access.
But other developers can only go through the public URL
git://github.com/x/mymodule.git. So whatever I use it won't work for
everybody.
What's the best way to deal with that? Could I set-up different
repository
URLs for one and the same submodule and use which one is appropriate?
After the "git submodule init" you can customize the url. From "man
git-submodule":
init::
Initialize the submodules, i.e. register each submodule name
and url found in .gitmodules into .git/config.
The key used in .git/config is `submodule.$name.url`.
This command does not alter existing information in .git/
config.
You can then customize the submodule clone URLs in .git/config
for your local setup and proceed to 'git submodule update';
you can also just use 'git submodule update --init' without
the explicit 'init' step if you do not intend to customize
any submodule locations.
You can also use the config url."<actual url base>".insteadOf = <other
url base>.
See the git-pull manpage for examples.
I didn't get the insteadOf config running (maybe I have to update to a
more recent version of git). But modifying the URL in .git/config
should be a doable approach for us. In order to add the insteadOf
section we would have to edit the .git/config file as well, so that
doesn't seem to be much better.
Thanks for your help,
--Peter
HTH,
Santi
--
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