threads / discuss / 38439

Git submodule first time update with proxy

Subject: Git submodule first time update with proxy

## tl;dr

5 messages between Jan 23, 2015 and Jan 24, 2015.

replies: 4people: 2as markdown or json

Robert Dailey· Jan 23, 2015, 02:50 UTC · lore
I have a submodule using HTTP URL. I do this:

$ git submodule init MySubmodule $ git submodule update MySubmodule

The 2nd command fails because the HTTP URL cannot be resolved, this is because it requires a proxy. I have "http.proxy" setup properly in the .git/config of my parent git repository, so I was hoping the submodule update function would have a way to specify it to inherit the proxy value from the parent config.

How can I set up my submodule?
Chris Packham· Jan 23, 2015, 22:13 UTC · re: Robert Dailey · lore

Re: Git submodule first time update with proxy

Hi,
On Fri, Jan 23, 2015 at 3:50 PM, Robert Dailey <rcdailey.lists@gmail.com> wrote:
Show 10 quoted lines
> I have a submodule using HTTP URL. I do this:
>
> $ git submodule init MySubmodule
> $ git submodule update MySubmodule
>
> The 2nd command fails because the HTTP URL cannot be resolved, this is
> because it requires a proxy. I have "http.proxy" setup properly in the
> .git/config of my parent git repository, so I was hoping the submodule
> update function would have a way to specify it to inherit the proxy
> value from the parent config.

Your not the first to suggest it and you probably won't be the last. It is hard to decide _which_ config variables, if any, should propagate from the parent. What works for one use-case may not necessarily work for another.

> How can I set up my submodule?

Probably the easiest thing would be to make your http.proxy configuration global i.e.

  $ git config --global http.proxy ....

If you don't want to make it a global setting you can setup the submodule configuration after running init but before running update i.e.

  $ git submodule init MySubmodule
  $ (cd MySubmodule && git config http.proxy ...)
  $ git submodule update MySubmodule
Robert Dailey· Jan 24, 2015, 04:23 UTC · re: Chris Packham · lore

Re: Git submodule first time update with proxy

On Fri, Jan 23, 2015 at 4:13 PM, Chris Packham <judge.packham@gmail.com> wrote:
Show 33 quoted lines
> Hi,
>
> On Fri, Jan 23, 2015 at 3:50 PM, Robert Dailey <rcdailey.lists@gmail.com> wrote:
>> I have a submodule using HTTP URL. I do this:
>>
>> $ git submodule init MySubmodule
>> $ git submodule update MySubmodule
>>
>> The 2nd command fails because the HTTP URL cannot be resolved, this is
>> because it requires a proxy. I have "http.proxy" setup properly in the
>> .git/config of my parent git repository, so I was hoping the submodule
>> update function would have a way to specify it to inherit the proxy
>> value from the parent config.
>
> Your not the first to suggest it and you probably won't be the last.
> It is hard to decide _which_ config variables, if any, should
> propagate from the parent. What works for one use-case may not
> necessarily work for another.
>
>> How can I set up my submodule?
>
> Probably the easiest thing would be to make your http.proxy
> configuration global i.e.
>
>   $ git config --global http.proxy ....
>
> If you don't want to make it a global setting you can setup the
> submodule configuration after running init but before running update
> i.e.
>
>   $ git submodule init MySubmodule
>   $ (cd MySubmodule && git config http.proxy ...)
>   $ git submodule update MySubmodule
 For some reason, the init call does not create the submodule
directory as you indicate. I also checked in .git/modules and it's not
there either.
Robert Dailey· Jan 24, 2015, 04:45 UTC · re: Robert Dailey · lore

Re: Git submodule first time update with proxy

On Fri, Jan 23, 2015 at 10:23 PM, Robert Dailey <rcdailey.lists@gmail.com> wrote:

Show 38 quoted lines
> On Fri, Jan 23, 2015 at 4:13 PM, Chris Packham <judge.packham@gmail.com> wrote:
>> Hi,
>>
>> On Fri, Jan 23, 2015 at 3:50 PM, Robert Dailey <rcdailey.lists@gmail.com> wrote:
>>> I have a submodule using HTTP URL. I do this:
>>>
>>> $ git submodule init MySubmodule
>>> $ git submodule update MySubmodule
>>>
>>> The 2nd command fails because the HTTP URL cannot be resolved, this is
>>> because it requires a proxy. I have "http.proxy" setup properly in the
>>> .git/config of my parent git repository, so I was hoping the submodule
>>> update function would have a way to specify it to inherit the proxy
>>> value from the parent config.
>>
>> Your not the first to suggest it and you probably won't be the last.
>> It is hard to decide _which_ config variables, if any, should
>> propagate from the parent. What works for one use-case may not
>> necessarily work for another.
>>
>>> How can I set up my submodule?
>>
>> Probably the easiest thing would be to make your http.proxy
>> configuration global i.e.
>>
>>   $ git config --global http.proxy ....
>>
>> If you don't want to make it a global setting you can setup the
>> submodule configuration after running init but before running update
>> i.e.
>>
>>   $ git submodule init MySubmodule
>>   $ (cd MySubmodule && git config http.proxy ...)
>>   $ git submodule update MySubmodule
>
>  For some reason, the init call does not create the submodule
> directory as you indicate. I also checked in .git/modules and it's not
> there either.
Correction:

I have to deinit the submodule then init again, then the submodule dir is created (but empty). When I run the git config command inside the submodule directory, it silently returns and does not indicate failure, however the final git submodule update command shows failure to access the remote and then subsequently the submodule empty directory is removed by Git.

Chris Packham· Jan 24, 2015, 05:47 UTC · re: Robert Dailey · lore

Re: Git submodule first time update with proxy

On Sat, Jan 24, 2015 at 5:45 PM, Robert Dailey <rcdailey.lists@gmail.com> wrote:
Show 41 quoted lines
> On Fri, Jan 23, 2015 at 10:23 PM, Robert Dailey
> <rcdailey.lists@gmail.com> wrote:
>> On Fri, Jan 23, 2015 at 4:13 PM, Chris Packham <judge.packham@gmail.com> wrote:
>>> Hi,
>>>
>>> On Fri, Jan 23, 2015 at 3:50 PM, Robert Dailey <rcdailey.lists@gmail.com> wrote:
>>>> I have a submodule using HTTP URL. I do this:
>>>>
>>>> $ git submodule init MySubmodule
>>>> $ git submodule update MySubmodule
>>>>
>>>> The 2nd command fails because the HTTP URL cannot be resolved, this is
>>>> because it requires a proxy. I have "http.proxy" setup properly in the
>>>> .git/config of my parent git repository, so I was hoping the submodule
>>>> update function would have a way to specify it to inherit the proxy
>>>> value from the parent config.
>>>
>>> Your not the first to suggest it and you probably won't be the last.
>>> It is hard to decide _which_ config variables, if any, should
>>> propagate from the parent. What works for one use-case may not
>>> necessarily work for another.
>>>
>>>> How can I set up my submodule?
>>>
>>> Probably the easiest thing would be to make your http.proxy
>>> configuration global i.e.
>>>
>>>   $ git config --global http.proxy ....
>>>
>>> If you don't want to make it a global setting you can setup the
>>> submodule configuration after running init but before running update
>>> i.e.
>>>
>>>   $ git submodule init MySubmodule
>>>   $ (cd MySubmodule && git config http.proxy ...)
>>>   $ git submodule update MySubmodule
>>
>>  For some reason, the init call does not create the submodule
>> directory as you indicate. I also checked in .git/modules and it's not
>> there either.
>

OK I must be wrong about that. I was working from memory. Trying it now I see the error in my thinking

  $ git submodule init bar
  Submodule 'bar' (bar.git) registered for path 'bar'

I thought this meant that bar/.git (and .git/modules/bar) had been created but as you point out I was wrong.

> Correction:
>
> I have to deinit the submodule then init again, then the submodule dir
> is created (but empty).
That's the default state of an uninitialized submodule.
Show 5 quoted lines
> When I run the git config command inside the
> submodule directory, it silently returns and does not indicate
> failure, however the final git submodule update command shows failure
> to access the remote and then subsequently the submodule empty
> directory is removed by Git.

So it looks like the only solution to your problem right now is to use git config --global for your proxy configuration.

← back to recent threads