Move repository_format_partial_clone to promisor-remote.c

Now that we have has_promisor_remote() and can use many promisor remotes, let's hide repository_format_partial_clone as a static in promisor-remote.c to avoid it being use for anything other than managing backward compatibility. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Christian Couder committed Jun 25, 2019 at 15:40 UTC 60b7a92d846a6cc542f96fa0045735cc0b9265fd
5 files changed +15 -3
cache.h
-1
@@ -961,7 +961,6 @@ extern int grafts_replace_parents;
961 #define GIT_REPO_VERSION 0
962 #define GIT_REPO_VERSION_READ 1
963 extern int repository_format_precious_objects;
964 -extern char *repository_format_partial_clone;
964 extern const char *core_partial_clone_filter_default;
965 extern int repository_format_worktree_config;
966
environment.c
-1
@@ -31,7 +31,6 @@ int warn_ambiguous_refs = 1;
31 int warn_on_object_refname_ambiguity = 1;
32 int ref_paranoia = -1;
33 int repository_format_precious_objects;
34 -char *repository_format_partial_clone;
34 const char *core_partial_clone_filter_default;
35 int repository_format_worktree_config;
36 const char *git_commit_encoding;
promisor-remote.c
+7
@@ -4,6 +4,13 @@
4 #include "config.h"
5 #include "transport.h"
6
7 +static char *repository_format_partial_clone;
8 +
9 +void set_repository_format_partial_clone(char *partial_clone)
10 +{
11 + repository_format_partial_clone = xstrdup_or_null(partial_clone);
12 +}
13 +
14 static int fetch_refs(const char *remote_name, struct ref *ref)
15 {
16 struct remote *remote;
promisor-remote.h
+6
@@ -22,4 +22,10 @@ extern int promisor_remote_get_direct(struct repository *repo,
22 const struct object_id *oids,
23 int oid_nr);
24
25 +/*
26 + * This should be used only once from setup.c to set the value we got
27 + * from the extensions.partialclone config option.
28 + */
29 +extern void set_repository_format_partial_clone(char *partial_clone);
30 +
31 #endif /* PROMISOR_REMOTE_H */
setup.c
+2 -1
@@ -4,6 +4,7 @@
4 #include "dir.h"
5 #include "string-list.h"
6 #include "chdir-notify.h"
7 +#include "promisor-remote.h"
8
9 static int inside_git_dir = -1;
10 static int inside_work_tree = -1;
@@ -478,7 +479,7 @@ static int check_repository_format_gently(const char *gitdir, struct repository_
479 }
480
481 repository_format_precious_objects = candidate->precious_objects;
481 - repository_format_partial_clone = xstrdup_or_null(candidate->partial_clone);
482 + set_repository_format_partial_clone(candidate->partial_clone);
483 repository_format_worktree_config = candidate->worktree_config;
484 string_list_clear(&candidate->unknown_extensions, 0);
485