On Mon, Oct 29, 2012 at 01:34:01AM -0400, Jeff King wrote: > On Sun, Oct 28, 2012 at 06:34:31PM -0400, W. Trevor King wrote: > > > On Sun, Oct 28, 2012 at 02:59:33PM -0700, Shawn Pearce wrote: > > > Looks like the Gerrit meaning is basically the same as Ævar's. Gerrit > > > updates the parent project as if you had done: > > > > > > $ git submodule foreach 'git checkout $(git config --file > > > $toplevel/.gitmodules submodule.$name.branch) && git pull' > > > $ git commit -a -m "Updated submodules" > > > $ git push > > > > Ah, good, then we *are* all using the option for the same thing. > > That makes me more comfortable. Your patch adds support for setting the > variable initially. Does it need any special magic for maintenance, or > is it something that would always be updated by hand? Everyone we've heard from so far interprets the setting as “pull from $branch in the remote repository $url to update the submodule”. With Phil's export, that would become $ git submodule foreach 'git checkout "$submodule_branch" && git pull' $ git commit -a -m "Updated submodules" $ git push As Nahor mentioned on the 23rd, there are a number of ways that the upstream branch could disappear, but Git has no way to know what the new branch setting should be. This means that even if we make “pull from $branch” interpretation official, we still couldn't do anything slick about updating it. So, yes, it will be updated by hand. -- This email may be signed or encrypted with GnuPG (http://www.gnupg.org). For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy