Subject: Re: serving git with both "git:" and "http:" and submodules

From: Boaz Harrosh <[email-masked]>
Date: Wed, 14 Jul 2010 18:58:50 +0300

On 07/14/2010 06:39 PM, Jonathan Nieder wrote:
> Boaz Harrosh wrote:
> 
>> So smart people using git will just do:
>> 1. $ git clone git://my-domain.org/my-tree/.git
>> 2. $ git submodule init
>> 3. $ git submodule update
>>
>> And all is well... But smart ass corporate people would not use "git:"
>> protocol because of fire-walls and for them I have a dumb "http:" export
>> as:
>> 1. $ git clone http://my-domain.org/trees/my-tree/.git
> [...]
>> So my question is: Can I automate this so people with "http:"
>> clones are not forced to manually edit their config files?
>> (Some users are just not up to it)
> 
> Sure.  For example, you can ship an update-submodules.sh script
> to take care of checking “git config remote.origin.url” and
> updating the ‘[submodule "sub"] url’ configuration to match.
> 
> Of course, even this would not make
> 'git clone --recursive http://my-domain.org/trees/my-tree/.git'

Right

> work.  If you can get git-http-backend working, I’d suggest using
> that so you only have to deal with one url.
> 

Ok I'll dive into "git-http-backend" (any pointers). But I thought
this one will still serve me an "http:" url. Are you suggesting to
just drop the "git:" protocol? (Since "git-http-backend" is just as
good, through http?)

> Hope that helps,
> Jonathan

But a script for users might be a very good idea. I might even add
it to the main Makefile. And make it totally transparent.
$ git-clone; make;

Thanks that actually helped
Boaz