]> git.ipfire.org Git - thirdparty/git.git/commitdiff
setup: stop using `the_repository` in `upgrade_repository_format()`
authorPatrick Steinhardt <ps@pks.im>
Tue, 19 May 2026 09:52:18 +0000 (11:52 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 19 May 2026 10:36:25 +0000 (19:36 +0900)
Stop using `the_repository` in `upgrade_repository_format()` and instead
accept the repository as a parameter. The injection of `the_repository`
is thus bumped one level higher, where callers now pass it in
explicitly.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
list-objects-filter-options.c
repository.h
setup.c
worktree.c

index cef67e591954a90ffd0340e42ee3358f5599d0e2..bc5d98f9e613cfd17c680ac109e8de40cd34f72d 100644 (file)
@@ -378,7 +378,7 @@ void partial_clone_register(
                         */
                        return;
        } else {
-               if (upgrade_repository_format(1) < 0)
+               if (upgrade_repository_format(the_repository, 1) < 0)
                        die(_("unable to upgrade repository format to support partial clone"));
 
                /* Add promisor config for the remote */
index d391aff8ab4a9086f45d38842c693ee524959a32..c3ec0f4b790b0057bdd40949b14d0d101073ceaf 100644 (file)
@@ -281,6 +281,6 @@ void repo_update_index_if_able(struct repository *, struct lock_file *);
  * Return 1 if upgrade repository format to target_version succeeded,
  * 0 if no upgrade is necessary, and -1 when upgrade is not possible.
  */
-int upgrade_repository_format(int target_version);
+int upgrade_repository_format(struct repository *repo, int target_version);
 
 #endif /* REPOSITORY_H */
diff --git a/setup.c b/setup.c
index 5dc27caf156b24fe035179baf31531bb18795b49..ed0c14e98e0b85b2849f07ab7ddc5a7148e91073 100644 (file)
--- a/setup.c
+++ b/setup.c
@@ -811,7 +811,7 @@ static int check_repository_format_gently(struct repository *repo,
        return 0;
 }
 
-int upgrade_repository_format(int target_version)
+int upgrade_repository_format(struct repository *repo, int target_version)
 {
        struct strbuf sb = STRBUF_INIT;
        struct strbuf err = STRBUF_INIT;
@@ -819,7 +819,7 @@ int upgrade_repository_format(int target_version)
        struct repository_format repo_fmt = REPOSITORY_FORMAT_INIT;
        int ret;
 
-       repo_common_path_append(the_repository, &sb, "config");
+       repo_common_path_append(repo, &sb, "config");
        read_repository_format(&repo_fmt, sb.buf);
        strbuf_release(&sb);
 
@@ -841,7 +841,7 @@ int upgrade_repository_format(int target_version)
        }
 
        strbuf_addf(&repo_version, "%d", target_version);
-       repo_config_set(the_repository, "core.repositoryformatversion", repo_version.buf);
+       repo_config_set(repo, "core.repositoryformatversion", repo_version.buf);
 
        ret = 1;
 
index 340b4ed777cc25178c7dde662f983c60febd8912..97eddc391669532e2bcae0302d8603ab4b76e109 100644 (file)
@@ -1104,7 +1104,7 @@ void write_worktree_linking_files(const char *dotgit, const char *gitdir,
        strbuf_realpath(&repo, repo.buf, 1);
 
        if (use_relative_paths && !the_repository->repository_format_relative_worktrees) {
-               if (upgrade_repository_format(1) < 0)
+               if (upgrade_repository_format(the_repository, 1) < 0)
                        die(_("unable to upgrade repository format to support relative worktrees"));
                if (repo_config_set_gently(the_repository, "extensions.relativeWorktrees", "true"))
                        die(_("unable to set extensions.relativeWorktrees setting"));