]> git.ipfire.org Git - thirdparty/git.git/commit
refs: refactor logic to look up storage backends
authorPatrick Steinhardt <ps@pks.im>
Fri, 29 Dec 2023 07:26:34 +0000 (08:26 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 2 Jan 2024 17:24:47 +0000 (09:24 -0800)
commit0fcc285c5eaab904ea9a8ade2696fe61355cf587
treeb81e93e9a75fba4ee015e115c67fbda83cac7153
parent465a22b338a05a5ffeeffc6bd9174ef5d9a090a0
refs: refactor logic to look up storage backends

In order to look up ref storage backends, we're currently using a linked
list of backends, where each backend is expected to set up its `next`
pointer to the next ref storage backend. This is kind of a weird setup
as backends need to be aware of other backends without much of a reason.

Refactor the code so that the array of backends is centrally defined in
"refs.c", where each backend is now identified by an integer constant.
Expose functions to translate from those integer constants to the name
and vice versa, which will be required by subsequent patches.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
refs.c
refs.h
refs/debug.c
refs/files-backend.c
refs/packed-backend.c
refs/refs-internal.h
repository.h