On Thu, Mar 16, 2017 at 3:29 PM, Brandon Williams <[email protected]> wrote:
> When initializing a submodule set the submodule.<name>.active config to
> true if the module hasn't already been configured to be active by some
> other means (e.g. a pathspec set in submodule.active).
>
> Signed-off-by: Brandon Williams <[email protected]>
> ---
> builtin/submodule--helper.c | 7 +++++++
> t/t7400-submodule-basic.sh | 11 +++++++++++
> 2 files changed, 18 insertions(+)
>
> diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c
> index e95738b42..a574596cb 100644
> --- a/builtin/submodule--helper.c
> +++ b/builtin/submodule--helper.c
> @@ -361,6 +361,13 @@ static void init_submodule(const char *path, const char
> *prefix, int quiet)
> die(_("No url found for submodule path '%s' in .gitmodules"),
> displaypath);
>
> + /* Set active flag for the submodule being initialized */
> + if (!is_submodule_initialized(path)) {
> + strbuf_reset(&sb);
> + strbuf_addf(&sb, "submodule.%s.active", sub->name);
In case a reroll is needed, you could mark this location with
/*
* NEEDSWORK: in a multi-working-tree world we need to set
* this per-worktree here.
*/