On Tue, Apr 14, 2015 at 8:51 AM, <aaron@aaronboman.com> wrote:
> ===
> git pull
> git submodule init
> git submodule foreach git pull
> ===
>
> Which I need so that the many submodules don't stray from the
> branch they are on and become detached. And BB is just another
> submodule. So it would be a PITA to do something special for
> BB. Gods why is git so horrible at this :-\ More than two
> years of being forced to use git and the cons are a magnitude
> larger than the pros.

Along with setting pull.rebase to true,

OK, setting the rebase config worked. Too bad it gives this on update:

==
Entering 'tools/build'
Cannot pull with rebase: You have unstaged changes.
Please commit or stash them.
==

But seems to work nicely after I commit my local changes (so far). Thanks Volodya :-)
 
you can also create an alias in
your global ~/.gitconfig file:

[alias]
    update = !git pull && git submodule update --init --recursive

Then use it on the command line like so:

~/project/ $ git update

Nice to know.. But doesn't immediately help as I need to share the script with other developers on my team so that we all update the same way. Is there a way to have that be a repo level option?

--
-- Rene Rivera
-- Grafik - Don't Assume Anything
-- Robot Dreams - http://robot-dreams.net
-- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail