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

Re: Restart submodule update --recursive

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Oct 28, 2010, 18:15 UTC
Message-ID
<20101028181515.GB14212@burratino>
In-Reply-To
<loom.20101028T090353-376@post.gmane.org>
(+cc: Jens of submodule-usability-enhancements fame)
Hi Lukasz,
Lukasz Palczewski wrote:
>                                                                       I use git
> command: git submodule update --recursive
[...]
Show 6 quoted lines
>                 If I have some local changes in some submodule, the command
> stops and I have to revert the changes and start the submodule update from the
> begining again.
> Is there a way to start the submodule update from the place, where the error
> occured and the command stop? Something like:
> git submodule update --recursive --restart_form_last_error

How many submodules are involved here? I suspect there is some optimization possible: if a submodule was already updated, there should not be much to do on the second pass, right? What aspect of the update seems to take the most time (as witnessed by pstree -a, for example)? Maybe what would be most useful is a hypothetical

	git submodule update --fetch-only
	(or git fetch --recursive)
followed by
	git submodule update --no-fetch
	(or git checkout --recursive)
?

But if there are many, many submodules, it could be better to script a --save-progress and --resume along the lines you described.

Two possible approaches:
 - Make a new script using "git submodule foreach --recursive" that
   steps through the list by hand, or
 - Take cmd_update from git-submodule.sh in the git sources and modify
   to taste.

If you follow either of those approaches, please keep up posted. Such scripts are inspiring and can be useful to others, too.

Thanks for an interesting example, Jonathan

Previous: Lukasz PalczewskiNext: Lukasz Palczewski
Message 4 of 11 in “Restart submodule update --recursive”
  1. Lukasz PalczewskiOct 28, 2010
  2. Johan HerlandOct 28, 2010
  3. Lukasz PalczewskiOct 29, 2010
  4. Jonathan NiederOct 28, 2010
  5. Lukasz PalczewskiOct 29, 2010
  6. Jonathan NiederOct 29, 2010
  7. Lukasz PalczewskiOct 29, 2010
  8. Jonathan NiederOct 29, 2010
  9. Jens LehmannOct 30, 2010
  10. Lukasz PalczewskiNov 2, 2010
  11. Jens LehmannNov 2, 2010

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.