summaryrefslogtreecommitdiff
path: root/submodule.c
diff options
context:
space:
mode:
authorJens Lehmann <Jens.Lehmann@web.de>2012-06-13 18:50:10 +0200
committerJunio C Hamano <gitster@pobox.com>2013-12-26 11:59:05 -0800
commitd4fa852597ffab711675528f2baccb1a0fb3bc82 (patch)
tree7dc8adec59992ce41b57730fb3acca261ce25895 /submodule.c
parentde40c413f0e600668db1ccbf5bdf34694c29843f (diff)
downloadgit-jl/submodule-recursive-checkout.tar.gz
Teach checkout to recursively checkout submodulesjl/submodule-recursive-checkout
Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'submodule.c')
-rw-r--r--submodule.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/submodule.c b/submodule.c
index 3365987d71..bdce1b283d 100644
--- a/submodule.c
+++ b/submodule.c
@@ -398,6 +398,20 @@ int parse_update_recurse_submodules_arg(const char *opt, const char *arg)
}
}
+int option_parse_update_submodules(const struct option *opt,
+ const char *arg, int unset)
+{
+ if (unset) {
+ *(int *)opt->value = RECURSE_SUBMODULES_OFF;
+ } else {
+ if (arg)
+ *(int *)opt->value = parse_update_recurse_submodules_arg(opt->long_name, arg);
+ else
+ *(int *)opt->value = RECURSE_SUBMODULES_ON;
+ }
+ return 0;
+}
+
int submodule_needs_update(const char *path)
{
struct string_list_item *path_option;