Subject: Re: [PATCH v2 3/3] push: Add the --no-recurse-submodules option

From: Jens Lehmann <[email-masked]>
Date: Fri, 29 Jul 2011 00:22:56 +0200

Am 28.07.2011 22:05, schrieb Junio C Hamano:
> Fredrik Gustafsson <[email-masked]> writes:
> 
>> This adds the option --no-recurse-submodules to push. That is, git
> 
> I think this needs to be renamed at least for two reasons.
> 
> The name makes it sound as if "push --recurse-submodules" would
> recursively visit the submodules and runs "push" there, but I do not think
> that is what this flag does.

That is because the patch that does this is still in the making ;-)

The cover letter should have mentioned it, but we talked about making push
pretty symmetric to fetch:

- Use "--no-recurse-submodules" if you don't want submodules to be pushed
  (we added that right now so users can disable the behavior the second
  commit introduces)
- Use "--recurse-submodules=on-demand" to push only those submodules where
  new commits have been recorded in the superproject's refs to be pushed
- Use "--recurse-submodules" to unconditionally push everything in the
  submodules too
- Make the default configurable by a "push.recurseSubmodules" option

We'll need another round to discuss how to handle private submodules which
were never intended to be pushed, but I think the general idea of having
fetch and push use similar options makes sense, no?