diff options
author | Junio C Hamano <gitster@pobox.com> | 2021-10-26 02:06:56 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-10-26 02:06:56 +0300 |
commit | 162a13b855ee8d920a31d6d1e928cef0f0a18e18 (patch) | |
tree | c1bfa439f65e07a38957a665c31cbe4dcdcb0b1a /refs/refs-internal.h | |
parent | bfa646c2cbad55cf652344415616eadc9e20f3c4 (diff) | |
parent | 71ef66d7403c05a6fe8ec118431332a8919b52a2 (diff) |
Merge branch 'jt/no-abuse-alternate-odb-for-submodules'
Follow through the work to use the repo interface to access
submodule objects in-process, instead of abusing the alternate
object database interface.
* jt/no-abuse-alternate-odb-for-submodules:
submodule: trace adding submodule ODB as alternate
submodule: pass repo to check_has_commit()
object-file: only register submodule ODB if needed
merge-{ort,recursive}: remove add_submodule_odb()
refs: peeling non-the_repository iterators is BUG
refs: teach arbitrary repo support to iterators
refs: plumb repo into ref stores
Diffstat (limited to 'refs/refs-internal.h')
-rw-r--r-- | refs/refs-internal.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/refs/refs-internal.h b/refs/refs-internal.h index 72746407fc..12224742ed 100644 --- a/refs/refs-internal.h +++ b/refs/refs-internal.h @@ -66,6 +66,7 @@ int refname_is_safe(const char *refname); * referred-to object does not exist, emit a warning and return false. */ int ref_resolves_to_object(const char *refname, + struct repository *repo, const struct object_id *oid, unsigned int flags); @@ -539,7 +540,8 @@ struct ref_store; * should call base_ref_store_init() to initialize the shared part of * the ref_store and to record the ref_store for later lookup. */ -typedef struct ref_store *ref_store_init_fn(const char *gitdir, +typedef struct ref_store *ref_store_init_fn(struct repository *repo, + const char *gitdir, unsigned int flags); typedef int ref_init_db_fn(struct ref_store *refs, struct strbuf *err); @@ -701,7 +703,12 @@ struct ref_store { /* The backend describing this ref_store's storage scheme: */ const struct ref_storage_be *be; - /* The gitdir that this ref_store applies to: */ + struct repository *repo; + + /* + * The gitdir that this ref_store applies to. Note that this is not + * necessarily repo->gitdir if the repo has multiple worktrees. + */ char *gitdir; }; |