Subject: Re: [boost] [git help] GitHub boostorg library authentication
From: Cox, Michael (mhcox_at_[hidden])
Date: 2013-10-31 02:56:27
On Wed, Oct 30, 2013 at 12:00 AM, <boost-request_at_[hidden]> wrote:
> Date: Tue, 29 Oct 2013 21:03:01 -0700
> From: Dave Abrahams <dave_at_[hidden]>
> To: boost_at_[hidden]
> Subject: Re: [boost] [git help] GitHub boostorg library authentication
> Message-ID: <m27gcv76dm.fsf_at_[hidden]>
> Content-Type: text/plain
> Daniel Pfeifer <daniel_at_[hidden]> writes:
> > 2013/10/29 Daniel James <daniel_at_[hidden]>:
> >> On 29 October 2013 04:36, Dave Abrahams <dave_at_[hidden]> wrote:
> >>>> The super-project can't use github's git urls as they don't
> >>>> allow anonymous access. I believe the super-project should be using
> >>>> https for submodules, rather than http.
> >>> Why is that? Because it's possible to commit through https?
> >> Yes.
> >>> But won't someone complain that they can't access https behind their
> >>> corporate firewall? It always seems like there's no right answer in
> >>> this territory.
> >> Oh right, I hadn't thought of that. Making it easy to check out
> >> probably should be the priority.
> > I am behind a corporate firewall and I cannot access git repositories
> > through ssh.
> > https works in both directions (pull and push).
> Yes, different corporate firewalls block different protocols. But I'm
> happy to change to https if everyone believes that will work better
In the .gitmodules file you can use relative urls, e.g.
path = libs/smart_ptr
url = ../smart_ptr
# url = http://github.com/boostorg/smart_ptr.git
fetchRecurseSubmodules = on-demand
The protocol used to access the super-project boost is what will be used to
retrieve the submodule projects. This might help with issues accessing the
repositories, although the super-project will have to accessed via
http/https (or whatever ports are open through the firewall).
This also makes the whole repository structure relocatable, e.g. a
development team using boost can clone all the repositories to their local
development server without having to modify the .gitmodules file in the
boost super-project. Unfortunately, there's no good way I'm aware of to
clone all the repositories as bare repositories. Maybe the latest changes
in how git submodules are stored (i.e. under .git/modules) will help.