From: Justin Tobler <jltobler@gmail.com>
To: K Jayatheerth <jayatheerthkulkarni2005@gmail.com>
Cc: git@vger.kernel.org, gitster@pobox.com,
lucasseikioshiro@gmail.com, ps@pks.im
Subject: Re: [PATCH v3 3/7] repo: add path.objects with absolute and relative suffix formatting
Date: Tue, 28 Jul 2026 12:12:18 -0500 [thread overview]
Message-ID: <amjeDPUeoOSN_oYk@denethor> (raw)
In-Reply-To: <20260726104343.16933-4-jayatheerthkulkarni2005@gmail.com>
On 26/07/26 04:13PM, K Jayatheerth wrote:
> Tools and deployment hooks frequently query the location of the object
> database directory. Currently, this relies on legacy parsing methods or
> manually inspecting `git rev-parse --git-path objects`.
"Tools and deployment hooks" seems a bit overly specific. Maybe instead
we could just say "Scripts operating on a repository may need to query
the location of the object database directory"?
Also, I'm not entirely sure what is meant by "legacy parsing methods"
here.
> Introduce `path.objects.absolute` and `path.objects.relative` keys to
> `git repo info`. This allows tools to discover the object database
> location safely while natively adhering to active `GIT_OBJECT_DIRECTORY`
> environment variable overrides.
In the context of pluggable ODBs, this proposed key is a little more
interesting because a non-"files" ODB source in the future may not even
have a filesystem path to an objects directory. When this becomes more
relevant, we could just adapt these keys to return an empty string in
such cases, but it does also make me question whether it is information
that we should further expose in the first place if it does eventually
becomes an internal detail of a specific ODB source.
It probably doesn't matter too much, but I've CC'd Patrick for his
thoughts too.
[snip]
> diff --git a/builtin/repo.c b/builtin/repo.c
> index 82359473e9..d6bdd5bcfa 100644
> --- a/builtin/repo.c
> +++ b/builtin/repo.c
> @@ -122,6 +122,28 @@ static int get_path_gitdir_relative(struct repository *repo, struct strbuf *buf)
> return 0;
> }
>
> +static int get_path_objects_absolute(struct repository *repo, struct strbuf *buf)
> +{
> + const char *obj_dir = repo_get_object_directory(repo);
> +
> + if (!obj_dir)
> + return error(_("unable to get object directory"));
> +
> + format_path(buf, obj_dir, startup_info->prefix, PATH_FORMAT_CANONICAL);
For the absolute path, do we actually need to provide the prefix? It
might make it more clear that its the aboslute path if we just pass ""
instead?
-Justin
next prev parent reply other threads:[~2026-07-28 17:12 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-16 1:21 [GSoC Patch 0/7] repo: add more path keys to git repo info K Jayatheerth
2026-07-16 1:21 ` [GSoC Patch 1/7] repo: add path.toplevel with absolute and relative suffix formatting K Jayatheerth
2026-07-16 1:21 ` [GSoC Patch 2/7] repo: add path.superproject-working-tree with absolute and relative suffixes K Jayatheerth
2026-07-16 1:21 ` [GSoC Patch 3/7] repo: add path.objects with absolute and relative suffix formatting K Jayatheerth
2026-07-16 1:21 ` [GSoC Patch 4/7] repo: add path.hooks " K Jayatheerth
2026-07-16 1:21 ` [GSoC Patch 5/7] repo: add path.index " K Jayatheerth
2026-07-16 1:21 ` [GSoC Patch 6/7] repo: add path.grafts " K Jayatheerth
2026-07-16 1:21 ` [GSoC Patch 7/7] repo: add path.git-prefix path key validation K Jayatheerth
2026-07-16 3:23 ` Junio C Hamano
2026-07-16 15:36 ` K Jayatheerth
2026-07-17 13:30 ` [GSoC Patch v2 0/7] repo: add more path keys to git repo info K Jayatheerth
2026-07-17 13:30 ` [GSoC Patch v2 1/7] repo: add path.toplevel with absolute and relative suffix formatting K Jayatheerth
2026-07-17 13:30 ` [GSoC Patch v2 2/7] repo: add path.superproject-working-tree with absolute and relative suffixes K Jayatheerth
2026-07-17 13:30 ` [GSoC Patch v2 3/7] repo: add path.objects with absolute and relative suffix formatting K Jayatheerth
2026-07-17 13:30 ` [GSoC Patch v2 4/7] repo: add path.hooks " K Jayatheerth
2026-07-17 13:30 ` [GSoC Patch v2 5/7] repo: add path.index " K Jayatheerth
2026-07-20 0:35 ` Lucas Seiki Oshiro
2026-07-24 17:49 ` K Jayatheerth
2026-07-24 19:21 ` Junio C Hamano
2026-07-17 13:30 ` [GSoC Patch v2 6/7] repo: add path.grafts " K Jayatheerth
2026-07-20 0:20 ` Lucas Seiki Oshiro
2026-07-20 4:01 ` Junio C Hamano
2026-07-21 2:19 ` K Jayatheerth
2026-07-17 13:30 ` [GSoC Patch v2 7/7] repo: add path.git-prefix path key K Jayatheerth
2026-07-26 10:43 ` [GSoC Patch v3 0/7] repo: add more path keys to git repo info K Jayatheerth
2026-07-26 10:43 ` [PATCH v3 1/7] repo: add path.toplevel with absolute and relative suffix formatting K Jayatheerth
2026-07-27 8:45 ` Junio C Hamano
2026-07-28 1:21 ` K Jayatheerth
2026-07-28 16:36 ` Justin Tobler
2026-07-26 10:43 ` [PATCH v3 2/7] repo: add path.superproject-working-tree with absolute and relative suffixes K Jayatheerth
2026-07-28 16:43 ` Justin Tobler
2026-07-26 10:43 ` [PATCH v3 3/7] repo: add path.objects with absolute and relative suffix formatting K Jayatheerth
2026-07-28 17:12 ` Justin Tobler [this message]
2026-07-26 10:43 ` [PATCH v3 4/7] repo: add path.hooks " K Jayatheerth
2026-07-28 19:00 ` Justin Tobler
2026-07-26 10:43 ` [PATCH v3 5/7] repo: add path.index " K Jayatheerth
2026-07-26 10:43 ` [PATCH v3 6/7] repo: add path.grafts " K Jayatheerth
2026-07-26 10:43 ` [PATCH v3 7/7] repo: add path.git-prefix path key K Jayatheerth
2026-07-26 16:29 ` [GSoC Patch v3 0/7] repo: add more path keys to git repo info Junio C Hamano
2026-07-26 17:00 ` K Jayatheerth
2026-07-27 0:57 ` Lucas Seiki Oshiro
2026-07-27 5:55 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=amjeDPUeoOSN_oYk@denethor \
--to=jltobler@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jayatheerthkulkarni2005@gmail.com \
--cc=lucasseikioshiro@gmail.com \
--cc=ps@pks.im \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.