14228447c9
Up until recently, object IDs did not have an algorithm member, only a hash. Consequently, it was possible to share one null (all-zeros) object ID among all hash algorithms. Now that we're going to be handling objects from multiple hash algorithms, it's important to make sure that all object IDs have a correct algorithm field. Introduce a per-algorithm null OID, and add it to struct hash_algo. Introduce a wrapper function as well, and use it everywhere we used to use the null_oid constant. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
33 lines
763 B
C
33 lines
763 B
C
#include "test-tool.h"
|
|
#include "submodule-config.h"
|
|
|
|
static void die_usage(const char **argv, const char *msg)
|
|
{
|
|
fprintf(stderr, "%s\n", msg);
|
|
fprintf(stderr, "Usage: %s <submodulepath> <config name>\n", argv[0]);
|
|
exit(1);
|
|
}
|
|
|
|
int cmd__submodule_nested_repo_config(int argc, const char **argv)
|
|
{
|
|
struct repository subrepo;
|
|
const struct submodule *sub;
|
|
|
|
if (argc < 3)
|
|
die_usage(argv, "Wrong number of arguments.");
|
|
|
|
setup_git_directory();
|
|
|
|
sub = submodule_from_path(the_repository, null_oid(), argv[1]);
|
|
if (repo_submodule_init(&subrepo, the_repository, sub)) {
|
|
die_usage(argv, "Submodule not found.");
|
|
}
|
|
|
|
/* Read the config of _child_ submodules. */
|
|
print_config_from_gitmodules(&subrepo, argv[2]);
|
|
|
|
submodule_free(the_repository);
|
|
|
|
return 0;
|
|
}
|