Subject: Re: [PATCH 0/4] repo: add support for path-related fields

From: Phillip Wood <[email-masked]>
Date: Sun, 1 Mar 2026 10:44:08 +0000

Hi Lucas

On 28/02/2026 22:05, Lucas Seiki Oshiro wrote:
> Hi!
> 
> This patch series adds support for path-related fields in repo-info, based on
> what we already have in git-rev-parse:
> 
> 1. The two first patches moves the path formatting used by git-rev-parse to
>     path.c. This will allow us to reuse this code in git-repo-info
> 2. The second patch add a new flag --path-format to git-repo-info, similar to
>     the flag of git-rev-parse with the same name
> 3. Add the new field `path.toplevel` as a proof of concept.

How does this effort relate to similar effort at at 
https://lore.kernel.org/[email-masked] 
?
Also note the suggestion from Junio in that thread to use 
"path.working-tree" rather than copying the name from "git rev-parse"

> This arises from the fact that I didn't know what should be the default behavior
> of git-repo-info when dealing with paths. Some ideas were:
> 
> 1. Add --path-format, just like we have in git-rev-parse

I think that's the best solution. Having different defaults for 
different paths like rev-parse is confusing and having different keys 
for absolute and relative versions of the same path gets rather verbose.

Thanks

Phillip

> 2. Use what rev-parse uses by default
> 3. Add keys for both relative and absolute formats
> 
> In this case, I'm using 1, but I'm not sure if it's the best option. One
> downside that I see here is that git-repo-info won't be able to return
> a relative and an absolute path for different keys in the same call.
> 
> Since there are many people interested in contributing to git-repo-info, I'll
> leave the remaining path-related fields to them :-)
> 
> I'm CC'ing here:
> 
> - brian, who was the original author of the `print_path` [1]
> - Ayush, Tian, Jayatheerth, Soutrik and Pushkar, since they expressed interested
>    in contributing to git-repo-info in GSoC. (I hope that I didn't forget anyone)
> 
> This patch is based on top of master 2cc7191751 (The 8th batch, 2026-02-27) with
> lo/repo-leftover-bits merged.
> 
> [1] fac60b8925 (rev-parse: add option for absolute or relative path formatting, 2020-12-13)
> 
> Lucas Seiki Oshiro (4):
>    rev-parse: prepend `path_` to path-related enums
>    path: add new function strbuf_add_path
>    repo: add the --format-path flag
>    repo: add the field path.toplevel
> 
>   Documentation/git-repo.adoc |  8 ++-
>   builtin/repo.c              | 67 +++++++++++++++++++------
>   builtin/rev-parse.c         | 98 +++++++------------------------------
>   path.c                      | 51 +++++++++++++++++++
>   path.h                      | 23 +++++++++
>   t/t1900-repo-info.sh        | 69 ++++++++++++++++++++++++++
>   6 files changed, 221 insertions(+), 95 deletions(-)
>