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

Re: [PATCH v2 2/7] fetch/pull: Add the 'on-demand' value to the --recurse-submodules option

From
Marc Branchaud <marcnarc@xiplink.com>
Date
Mar 2, 2011, 16:02 UTC
Message-ID
<4D6E6A32.7030908@xiplink.com>
In-Reply-To
<4D6E699D.3040000@xiplink.com>
On 11-03-02 11:00 AM, Marc Branchaud wrote:
Show 52 quoted lines
> On 11-03-01 06:01 PM, Jens Lehmann wrote:
>> Until now the --recurse-submodules option could only be used to either
>> fetch all populated submodules recursively or to disable recursion
>> completely. As fetch and pull now by default just fetch those submodules
>> for which new commits have been fetched in the superproject, a command
>> line option to enforce that behavior is needed to be able to override
>> configuration settings.
> 
> Strictly speaking, this patch should add the 'on-demand' value to the first
> patch's --submodule-default option.  Perhaps I'm being a bit too uptight
> though...
> 
>> Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
>> ---
>>  Documentation/fetch-options.txt |   16 +++++++--
>>  Documentation/git-pull.txt      |    2 +-
>>  builtin/fetch.c                 |   22 ++++++++++--
>>  git-pull.sh                     |    3 ++
>>  submodule.c                     |    8 +++-
>>  submodule.h                     |    2 +-
>>  t/t5526-fetch-submodules.sh     |   71 +++++++++++++++++++++++++++++++++++++++
>>  7 files changed, 114 insertions(+), 10 deletions(-)
>>
>> diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt
>> index ae22f75..f28c0b1 100644
>> --- a/Documentation/fetch-options.txt
>> +++ b/Documentation/fetch-options.txt
>> @@ -65,9 +65,19 @@ ifndef::git-pull[]
>>  	specified with the remote.<name>.tagopt setting. See
>>  	linkgit:git-config[1].
>>
>> ---[no-]recurse-submodules::
>> -	This option controls if new commits of all populated submodules should
>> -	be fetched too (see linkgit:git-config[1] and linkgit:gitmodules[5]).
>> +--recurse-submodules[=yes|on-demand|no]::
>> +	This option controls if and under what conditions new commits of all
> 
> Nit: Remove "all" from the above line.
> 
>> +	populated submodules should be fetched too. It can be used as a
>> +	boolean option to completely disable recursion when set to 'no' or to
>> +	unconditionally recurse into all populated submodules when set to
>> +	'yes', which is the default when this option is used without any
>> +	value. If 'on-demand' is used, it will only recurse into those
>> +	submodules where new commits have been fetched in the superproject
>> +	(also see linkgit:git-config[1] and linkgit:gitmodules[5]).
> 
> Nit: Replace that last sentence with
> 
> 	Use 'on-demand' to only recurse into a submodule when the
> 	superproject retrieves a commit that updates the submodule's
> 	reference.
Doh!  That should read:
	Use 'on-demand' to only recurse into a populated submodule when the
	superproject retrieves a commit that updates the submodule's
	reference.
		M.
Previous: Marc BranchaudNext: Jens Lehmann
Message 6 of 16 in “Teach fetch/pull the on-demand mode and make it the default”
  1. 0/7 Teach fetch/pull the on-demand mode and make it the defaultJens Lehmann, Mar 1, 2011
  2. 1/7 fetch/pull: recurse into submodules when necessaryJens Lehmann, Mar 1, 2011
  3. Marc BranchaudMar 2, 2011
  4. 2/7 fetch/pull: Add the 'on-demand' value to the --recurse-submodules optionJens Lehmann, Mar 1, 2011
  5. Marc BranchaudMar 2, 2011
  6. Marc BranchaudMar 2, 2011
  7. 3/7 config: teach the fetch.recurseSubmodules option the 'on-demand' valueJens Lehmann, Mar 1, 2011
  8. Marc BranchaudMar 2, 2011
  9. 4/7 Submodules: Add 'on-demand' value for the 'fetchRecurseSubmodule' optionJens Lehmann, Mar 1, 2011
  10. 5/7 fetch/pull: Don't recurse into a submodule when commits are already presentJens Lehmann, Mar 1, 2011
  11. Marc BranchaudMar 2, 2011
  12. 6/7 submodule update: Don't fetch when the submodule commit is already presentJens Lehmann, Mar 1, 2011
  13. 7/7 fetch/pull: Describe --recurse-submodule restrictions in the BUGS sectionJens Lehmann, Mar 1, 2011
  14. Jens LehmannMar 2, 2011
  15. Marc BranchaudMar 2, 2011
  16. Jens LehmannMar 2, 2011

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.