From a452128a36cb73f5366c23eabe93c7edfa227866 Mon Sep 17 00:00:00 2001 From: Atharva Raykar Date: Fri, 6 Aug 2021 19:34:31 +0530 Subject: submodule--helper: introduce add-config subcommand Add a new "add-config" subcommand to `git submodule--helper` with the goal of converting part of the shell code in git-submodule.sh related to `git submodule add` into C code. This new subcommand sets the configuration variables of a newly added submodule, by registering the url in local git config, as well as the submodule name and path in the .gitmodules file. It also sets 'submodule..active' to "true" if the submodule path has not already been covered by any pathspec specified in 'submodule.active'. This is meant to be a faithful conversion from shell to C, although we add comments to areas that could be improved in future patches, after the conversion has settled. Signed-off-by: Atharva Raykar Mentored-by: Christian Couder Mentored-by: Shourya Shukla Based-on-patch-by: Shourya Shukla Based-on-patch-by: Prathamesh Chavan Signed-off-by: Junio C Hamano --- submodule.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'submodule.c') diff --git a/submodule.c b/submodule.c index 0b1d9c1dde..8577667773 100644 --- a/submodule.c +++ b/submodule.c @@ -237,6 +237,11 @@ int option_parse_recurse_submodules_worktree_updater(const struct option *opt, /* * Determine if a submodule has been initialized at a given 'path' */ +/* + * NEEDSWORK: Emit a warning if submodule.active exists, but is valueless, + * ie, the config looks like: "[submodule] active\n". + * Since that is an invalid pathspec, we should inform the user. + */ int is_submodule_active(struct repository *repo, const char *path) { int ret = 0; -- cgit v1.2.3