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

Re: Managing submodules on large multi-user projects

From
RBR. Tyler Ballance <tyler@slide.com>
Date
Jun 23, 2009, 22:58 UTC
Message-ID
<20090623225828.GD734@starfruit.corp.slide.com>
In-Reply-To
<94a0d4530905291558u564b4648ted79900b405f91b4@mail.gmail.com>
Hey Felipe, reply inline..
On Sat, 30 May 2009, Felipe Contreras wrote:
Show 28 quoted lines
> On Fri, May 29, 2009 at 9:41 PM, R. Tyler Ballance <tyler@slide.com> wrote:
> > I've noticed that keeping submodules updated is an absolute pain,
> > particularly with a large multiuser setup with *lots* of branches.
> >
> >
> > What will tend to happen is that the submodule reference will be updated
> > in the master branch (we use a centralized model) and then committed
> > (imagine the commit reference was incremented from A-B).
> >
> > Other developers with other branches will then periodically merge master
> > into their project/topic branches but will either neglect to run
> > `git submodule update` or our bootstrap script (which also executes the
> > submodule update command). At this point they'll have outstanding
> > changes of their own, and the submodule will be marked as "modified" as
> > well. Usually what will then happen is they'll `git commit -a` without
> > thinking and the submodule's reference will be changed (typically from
> > B->A, undoing the previous change).
> >
> >
> > Are there any saner ways of managing this? I've been trying to get the
> > `git submodule update` command to run with as many hooks as possible
> > (pre-commit, post-update) to make sure that developers aren't
> > inadvertantly breaking things, but nothing seems to ensure that
> > *everybody* is up to date and that *everybody* doesn't inadvertantly
> > commit changes to the submodule?
> 
> Have you tried repo?
> http://source.android.com/download/using-repo

No I've not tried repo, and the likelihood of getting our now 100+ user organization to switch over is highly unlikely.

Since I originally posted to this thread, I've had to entirely *remove* the submodule from the super-project and just dump the code in (boo, hiss) since it just caused too much damn trouble.

I'm going to give a newer version of Git a try and hope that everythin is better now, since the need has arisen for a git submodule again and things will get gnarly if I have to do another source dump.

:(

-R. Tyler Ballance Slide, Inc.

Previous: Felipe ContrerasNext: Alex Riesen
Message 6 of 7 in “Managing submodules on large multi-user projects”
  1. R. Tyler BallanceMay 29, 2009
  2. Avery PennarunMay 29, 2009
  3. R. Tyler BallanceMay 29, 2009
  4. Avery PennarunMay 29, 2009
  5. Felipe ContrerasMay 29, 2009
  6. R. Tyler BallanceJun 23, 2009
  7. Alex RiesenMay 31, 2009

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.