mirror of
https://github.com/git/git.git
synced 2024-11-25 10:54:00 +08:00
b33a15b081
The --recurse-submodules command line parameter has existed for some time but it has no config file equivalent. Following the style of the corresponding parameter for git fetch, let's invent push.recurseSubmodules to provide a default for this parameter. This also requires the addition of --recurse-submodules=no to allow the configuration to be overridden on the command line when required. The most straightforward way to implement this appears to be to make push use code in submodule-config in a similar way to fetch. Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Jeff King <peff@peff.net>
31 lines
906 B
C
31 lines
906 B
C
#ifndef SUBMODULE_CONFIG_CACHE_H
|
|
#define SUBMODULE_CONFIG_CACHE_H
|
|
|
|
#include "hashmap.h"
|
|
#include "strbuf.h"
|
|
|
|
/*
|
|
* Submodule entry containing the information about a certain submodule
|
|
* in a certain revision.
|
|
*/
|
|
struct submodule {
|
|
const char *path;
|
|
const char *name;
|
|
const char *url;
|
|
int fetch_recurse;
|
|
const char *ignore;
|
|
/* the sha1 blob id of the responsible .gitmodules file */
|
|
unsigned char gitmodules_sha1[20];
|
|
};
|
|
|
|
int parse_fetch_recurse_submodules_arg(const char *opt, const char *arg);
|
|
int parse_push_recurse_submodules_arg(const char *opt, const char *arg);
|
|
int parse_submodule_config_option(const char *var, const char *value);
|
|
const struct submodule *submodule_from_name(const unsigned char *commit_sha1,
|
|
const char *name);
|
|
const struct submodule *submodule_from_path(const unsigned char *commit_sha1,
|
|
const char *path);
|
|
void submodule_free(void);
|
|
|
|
#endif /* SUBMODULE_CONFIG_H */
|