environment: make get_git_dir() accept a repository

The `get_git_dir()` function retrieves the path to the Git directory for
`the_repository`. Make it accept a `struct repository` such that it can
work on arbitrary repositories and make it part of the repository
subsystem. This reduces our reliance on `the_repository` and clarifies
scope.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Patrick Steinhardt
2024-09-12 13:29:24 +02:00
committed by Junio C Hamano
parent 17d4b10aea
commit 246deeac95
21 changed files with 56 additions and 38 deletions

View File

@@ -91,6 +91,13 @@ static void expand_base_dir(char **out, const char *in,
*out = xstrfmt("%s/%s", base_dir, def_in);
}
const char *repo_get_git_dir(struct repository *repo)
{
if (!repo->gitdir)
BUG("repository hasn't been set up");
return repo->gitdir;
}
static void repo_set_commondir(struct repository *repo,
const char *commondir)
{