git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [GSoC PATCH v3 1/2] repo: add the flag -z as an alias for --format=nul

From
Junio C Hamano <gitster@pobox.com>
Date
Sep 2, 2025, 16:21 UTC
Message-ID
<xmqqms7cltak.fsf@gitster.g>
In-Reply-To
<20250901172732.98845-2-lucasseikioshiro@gmail.com>
Lucas Seiki Oshiro <lucasseikioshiro@gmail.com> writes:
Show 26 quoted lines
> Other Git commands that have nul-terminated output (e.g. git-config,
> git-status, git-ls-files) have a flag `-z` for using the null character
> as the record separator.
>
> Add the `-z` flag to git-repo-info as an alias for `--format=nul`,
> making it consistent with the behavior of the other commands.
>
> Mentored-by: Karthik Nayak <karthik.188@gmail.com>
> Mentored-by: Patrick Steinhardt <ps@pks.im>
> Signed-off-by: Lucas Seiki Oshiro <lucasseikioshiro@gmail.com>
> ---
>  Documentation/git-repo.adoc |  6 ++++--
>  builtin/repo.c              | 37 +++++++++++++++++++++++++------------
>  t/t1900-repo.sh             | 12 ++++++++++++
>  3 files changed, 41 insertions(+), 14 deletions(-)
>
> diff --git a/Documentation/git-repo.adoc b/Documentation/git-repo.adoc
> index 2870828d93..6f5ee88215 100644
> --- a/Documentation/git-repo.adoc
> +++ b/Documentation/git-repo.adoc
> @@ -8,7 +8,7 @@ git-repo - Retrieve information about the repository
>  SYNOPSIS
>  --------
>  [synopsis]
> -git repo info [--format=(keyvalue|nul)] [<key>...]
> +git repo info [--format=(keyvalue|nul)] [-z] [<key>...]

This is OK and I do not want you to reroll only to revert this, but FWIW what you had in the previous iteration

    git repo info [--format=(keyvalue|nul) | -z] [<key>...]

would also work perfectly well here. It is not like you are forbidding the command line to mention "--format=nul" twice, or "--format=keyvalue --format=nul" to allow the later one to override the former ones.

The updated option parsing looks much nicer.  Thanks.
Previous: Lucas Seiki OshiroNext: Lucas Seiki Oshiro
Message 31 of 37 in “repo: add -z and objects.format”
  1. 0/2 repo: add -z and objects.formatLucas Seiki Oshiro, Aug 20, 2025
  2. 1/2 repo: add the flag -z as an alias for --format=nulLucas Seiki Oshiro, Aug 20, 2025
  3. Karthik NayakAug 21, 2025
  4. Junio C HamanoAug 21, 2025
  5. Karthik NayakAug 21, 2025
  6. Patrick SteinhardtAug 21, 2025
  7. Lucas Seiki OshiroAug 21, 2025
  8. Junio C HamanoAug 21, 2025
  9. Lucas Seiki OshiroAug 21, 2025
  10. Junio C HamanoAug 21, 2025
  11. Jean-Noël AVILAAug 21, 2025
  12. Junio C HamanoAug 21, 2025
  13. 2/2 repo: add the field objects.formatLucas Seiki Oshiro, Aug 20, 2025
  14. Patrick SteinhardtAug 21, 2025
  15. Junio C HamanoAug 21, 2025
  16. Lucas Seiki OshiroAug 26, 2025
  17. Karthik NayakAug 21, 2025
  18. Junio C HamanoAug 21, 2025
  19. Patrick SteinhardtAug 21, 2025
  20. Lucas Seiki OshiroAug 21, 2025
  21. Patrick SteinhardtAug 21, 2025
  22. Junio C HamanoAug 21, 2025
  23. Lucas Seiki OshiroAug 26, 2025
  24. 0/2 repo: add -z and objects.formatLucas Seiki Oshiro, Aug 26, 2025
  25. 1/2 repo: add the flag -z as an alias for --format=nulLucas Seiki Oshiro, Aug 26, 2025
  26. Junio C HamanoAug 28, 2025
  27. Lucas Seiki OshiroSep 1, 2025
  28. 2/2 repo: add the field objects.formatLucas Seiki Oshiro, Aug 26, 2025
  29. 0/2 repo: add -z and objects.formatLucas Seiki Oshiro, Sep 1, 2025
  30. 1/2 repo: add the flag -z as an alias for --format=nulLucas Seiki Oshiro, Sep 1, 2025
  31. Junio C HamanoSep 2, 2025
  32. Lucas Seiki OshiroSep 2, 2025
  33. 2/2 repo: add the field objects.formatLucas Seiki Oshiro, Sep 1, 2025
  34. 0/2 repo: add -z and objects.formatLucas Seiki Oshiro, Sep 4, 2025
  35. 1/2 repo: add the flag -z as an alias for --format=nulLucas Seiki Oshiro, Sep 4, 2025
  36. 2/2 repo: add the field objects.formatLucas Seiki Oshiro, Sep 4, 2025
  37. Junio C HamanoSep 4, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.