Re: Managing submodules on large multi-user projects
- From
- R. 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.