git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git-clone ignores submodule.recurse configuration

From
BWBrandon Williams <bmwill@google.com>
Date
Dec 1, 2017, 21:47 UTC
Message-ID
<20171201214709.GA61710@google.com>
In-Reply-To
<CAN0XMOJnQX-gSnpHaiJUYr4X4-WT91oT3Xv3gDtKYjX7J3ObVw@mail.gmail.com>
On 12/01, Ralf Thielow wrote:
Show 18 quoted lines
> Today I played around a bit with git submodules and noticed
> that the very handy configuration "submodule.recurse" is not
> working for the git-clone command.
> 
> "git help config" tells me that submodule.recurse affects
> all commands that have a --recurse-submodules option.
> git-clone seems to be an exception which is also mentioned in
> a workflow example in Documentation/gitsubmodules.txt that
> says:
> 
>   # Unlike the other commands below clone still needs
>   # its own recurse flag:
>   git clone --recurse <URL> <directory>
>   cd <directory>
> 
> So this seems to be a known issue. Is someone already
> working on this or has a plan to do it? Or is there a reason
> not doing this for git-clone but for git-pull?

When we introduced the "submodule.recurse" config we explicitly had it not work with clone because a recursive clone ends up pulling data from other sources aside from the URL the user explicitly provides. Historically there have been a number of security related bugs with respect to cloning submodules so we felt it was best to require a recursive clone to be requested explicitly, at least for the time being.

-- 
Brandon Williams
Previous: Ralf ThielowNext: Stefan Beller
Message 2 of 3 in “git-clone ignores submodule.recurse configuration”
  1. Ralf ThielowDec 1, 2017
  2. Brandon WilliamsDec 1, 2017
  3. Stefan BellerDec 4, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.