diff options
author | Brandon Williams <bmwill@google.com> | 2016-12-16 20:03:16 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-12-22 20:47:33 +0100 |
commit | 5688c28d81e9103a234efeedcb0568c2c4dd0bfb (patch) | |
tree | 34dbf55bef024a00b253b50a9245dfdcfaefbb51 /submodule.c | |
parent | real_path: canonicalize directory separators in root parts (diff) | |
download | git-5688c28d81e9103a234efeedcb0568c2c4dd0bfb.tar.xz git-5688c28d81e9103a234efeedcb0568c2c4dd0bfb.zip |
submodules: add helper to determine if a submodule is populated
Add the `is_submodule_populated()` helper function to submodules.c.
`is_submodule_populated()` performes a check to see if a submodule has
been checkout out (and has a valid .git directory/file) at the given path.
Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'submodule.c')
-rw-r--r-- | submodule.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/submodule.c b/submodule.c index c85ba50110..ee3198dc24 100644 --- a/submodule.c +++ b/submodule.c @@ -198,6 +198,21 @@ void gitmodules_config(void) } } +/* + * Determine if a submodule has been populated at a given 'path' + */ +int is_submodule_populated(const char *path) +{ + int ret = 0; + char *gitdir = xstrfmt("%s/.git", path); + + if (resolve_gitdir(gitdir)) + ret = 1; + + free(gitdir); + return ret; +} + int parse_submodule_update_strategy(const char *value, struct submodule_update_strategy *dst) { |