From: Patrick Steinhardt <ps@pks.im>
To: Lucas Seiki Oshiro <lucasseikioshiro@gmail.com>
Cc: git@vger.kernel.org, karthik.188@gmail.com, ben.knoble@gmail.com,
gitster@pobox.com
Subject: Re: [GSoC RFC PATCH v2 5/7] repo-info: add the field references.format
Date: Thu, 3 Jul 2025 13:32:07 +0200 [thread overview]
Message-ID: <aGZqN-oqctJ79Chz@pks.im> (raw)
In-Reply-To: <20250619225751.99699-6-lucasseikioshiro@gmail.com>
On Thu, Jun 19, 2025 at 07:57:49PM -0300, Lucas Seiki Oshiro wrote:
> diff --git a/builtin/repo-info.c b/builtin/repo-info.c
> index 6499be0eae..6ce3e6134f 100644
> --- a/builtin/repo-info.c
> +++ b/builtin/repo-info.c
> @@ -1,21 +1,56 @@
> #include "builtin.h"
> #include "json-writer.h"
> #include "parse-options.h"
> +#include "quote.h"
> +#include "refs.h"
>
> enum output_format {
> FORMAT_JSON,
> FORMAT_PLAINTEXT
> };
>
> +enum repo_info_category {
> + CATEGORY_REFERENCES = 1 << 0
> +};
> +
> +enum repo_info_references_field {
> + FIELD_REFERENCES_FORMAT = 1 << 0
> +};
Missing commas after both enum values.
> +struct repo_info_field {
> + enum repo_info_category category;
> + union {
> + enum repo_info_references_field references;
> + } field;
> +};
Hm, okay. I guess later patches will add separate enums for each
category, so this saves us a couple bytes as the number of categories
grows.
> struct repo_info {
> struct repository *repo;
> enum output_format format;
> + int n_fields;
This should be `size_t`. Also, it's typical in our code base to call
this `fields_nr`.
> + struct repo_info_field *fields;
> };
>
> +static struct repo_info_field default_fields[] = {
> + {
> + .category = CATEGORY_REFERENCES,
> + .field.references = FIELD_REFERENCES_FORMAT
> + }
Missing comma.
> +};
> +
> +static void print_key_value(const char *key, const char *value) {
Formatting: the curly brace should sit on its own line.
> + printf("%s=", key);
> + quote_c_style(value, NULL, stdout, 0);
> + putchar('\n');
> +}
> +
> static void repo_info_init(struct repo_info *repo_info,
> struct repository *repo,
> - char *format)
> + char *format,
> + int allow_empty,
> + int argc, const char **argv)
> {
> + int i;
This variable can be declared in the loop itself:
for (int i = 0; ...)
> repo_info->repo = repo;
>
> if (format == NULL || !strcmp(format, "json"))
> @@ -24,19 +59,83 @@ static void repo_info_init(struct repo_info *repo_info,
> repo_info->format = FORMAT_PLAINTEXT;
> else
> die("invalid format %s", format);
> +
> + if (argc == 0 && !allow_empty) {
> + repo_info->n_fields = ARRAY_SIZE(default_fields);
> + repo_info->fields = default_fields;
> + } else {
> + repo_info->n_fields = argc;
> + ALLOC_ARRAY(repo_info->fields, argc);
> +
> + for (i = 0; i < argc; i++) {
> + const char *arg = argv[i];
> + struct repo_info_field *field = repo_info->fields + i;
> +
> + if (!strcmp(arg, "references.format")) {
> + field->category = CATEGORY_REFERENCES;
> + field->field.references = FIELD_REFERENCES_FORMAT;
> + } else {
> + die("invalid field '%s'", arg);
> + }
> + }
> + }
> }
>
> -static void repo_info_print_plaintext(struct repo_info *repo_info UNUSED)
> +static void repo_info_release(struct repo_info *repo_info)
> {
> + if (repo_info->fields != default_fields) free(repo_info->fields);
> }
>
> -static void repo_info_print_json(struct repo_info *repo_info UNUSED)
> +static void repo_info_print_plaintext(struct repo_info *repo_info) {
Formatting.
> + struct repository *repo = repo_info->repo;
> + int i;
Variable can be declared in the loop.
> + for (i = 0; i < repo_info->n_fields; i++) {
> + struct repo_info_field *field = &repo_info->fields[i];
> + switch (field->category) {
> + case CATEGORY_REFERENCES:
> + switch (field->field.references) {
I wonder a bit what it buys us that we have the difference between the
category and reference format. Right now it feels like it can cause more
errors that it prevents, as we now always have doubly-nested switches.
Wouldn't it make more sense to only only pass around the fields as
`repo_info_references_field`? We could then have two arrays that we
define globally:
static const char const* name_by_field[] = {
[FIELD_REFERENCES_FORMAT] = "references.format",
};
static repo_info_category category_by_field[] = {
[FIELD_REFERENCES_FORMAT] = CATEGORY_REFERENCES,
};
So `name_by_field[FIELD_REFERENCES_FORMAT]` would yield the name and
`category_by_field[CATEGORY_REFERENCES]` would yield its category. But
the benefit is that you only need to pass around the field enum from now
on, all other information is implicit.
The reverse information can also be obtained easily. To e.g. get all
fields of a reference you'd iterate through `category_by_field` and take
all array indices whose value matches the desired category.
> + case FIELD_REFERENCES_FORMAT:
> + print_key_value("references.format",
> + ref_storage_format_to_name(
> + repo->ref_storage_format));
> + break;
> + }
> + break;
> + }
> + }
> +}
> +
> +static void repo_info_print_json(struct repo_info *repo_info)
> {
> struct json_writer jw;
> + int i;
Variable can be declared in the loop.
> + unsigned int categories = 0;
> + unsigned int references_fields = 0;
> + struct repository *repo = repo_info->repo;
> +
> + for (i = 0; i < repo_info->n_fields; i++) {
> + struct repo_info_field *field = repo_info->fields + i;
> + categories |= field->category;
> + switch (field->category) {
> + case CATEGORY_REFERENCES:
> + references_fields |= field->field.references;
> + break;
> + }
> + }
>
> jw_init(&jw);
>
> jw_object_begin(&jw, 1);
> +
> + if (categories & CATEGORY_REFERENCES) {
> + jw_object_inline_begin_object(&jw, "references");
> + if (references_fields & FIELD_REFERENCES_FORMAT) {
> + const char *format_name = ref_storage_format_to_name(
> + repo->ref_storage_format);
> + jw_object_string(&jw, "format", format_name);
> + }
> + jw_end(&jw);
> + }
> jw_end(&jw);
>
> puts(jw.json.buf);
Patrick
next prev parent reply other threads:[~2025-07-03 11:32 UTC|newest]
Thread overview: 226+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-10 15:21 [GSoC RFC PATCH 0/5] repo-info: add new command for retrieving repository info Lucas Seiki Oshiro
2025-06-10 15:21 ` [GSoC RFC PATCH 1/5] repo-info: declare the repo-info command Lucas Seiki Oshiro
2025-06-11 8:59 ` Karthik Nayak
2025-06-10 15:21 ` [GSoC RFC PATCH 2/5] repo-info: add the --format flag Lucas Seiki Oshiro
2025-06-11 9:30 ` Karthik Nayak
2025-06-12 17:56 ` Lucas Seiki Oshiro
2025-06-13 7:31 ` Karthik Nayak
2025-06-10 15:21 ` [GSoC RFC PATCH 3/5] repo-info: add the field references.format Lucas Seiki Oshiro
2025-06-11 12:59 ` Karthik Nayak
2025-06-12 15:01 ` Junio C Hamano
2025-06-10 15:21 ` [GSoC RFC PATCH 4/5] repo-info: add field layout.bare Lucas Seiki Oshiro
2025-06-11 13:13 ` Karthik Nayak
2025-06-12 19:39 ` Lucas Seiki Oshiro
2025-06-12 19:53 ` Junio C Hamano
2025-06-10 15:21 ` [GSoC RFC PATCH 5/5] repo-info: add field layout.shallow Lucas Seiki Oshiro
2025-06-10 16:39 ` [GSoC RFC PATCH 0/5] repo-info: add new command for retrieving repository info Kristoffer Haugsbakk
2025-06-10 16:40 ` Junio C Hamano
2025-06-12 20:25 ` Lucas Seiki Oshiro
2025-06-12 21:01 ` Junio C Hamano
2025-06-16 22:19 ` Lucas Seiki Oshiro
2025-06-16 22:40 ` Junio C Hamano
2025-06-19 1:44 ` Lucas Seiki Oshiro
2025-06-11 13:17 ` Karthik Nayak
2025-06-19 22:57 ` [GSoC RFC PATCH v2 0/7] " Lucas Seiki Oshiro
2025-06-19 22:57 ` [GSoC RFC PATCH v2 1/7] repo-info: declare the repo-info command Lucas Seiki Oshiro
2025-06-20 7:36 ` Karthik Nayak
2025-06-20 23:55 ` Junio C Hamano
2025-06-23 9:19 ` Karthik Nayak
2025-06-23 19:04 ` Lucas Seiki Oshiro
2025-06-20 7:56 ` Karthik Nayak
2025-06-24 14:03 ` Phillip Wood
2025-07-03 11:31 ` Patrick Steinhardt
2025-07-04 21:40 ` Lucas Seiki Oshiro
2025-07-07 6:01 ` Patrick Steinhardt
2025-07-09 20:05 ` Justin Tobler
2025-06-19 22:57 ` [GSoC RFC PATCH v2 2/7] repo-info: add the --format flag Lucas Seiki Oshiro
2025-06-20 8:06 ` Karthik Nayak
2025-06-20 21:31 ` Junio C Hamano
2025-07-03 11:31 ` Patrick Steinhardt
2025-06-19 22:57 ` [GSoC RFC PATCH v2 3/7] repo-info: add plaintext as an output format Lucas Seiki Oshiro
2025-06-20 21:37 ` Junio C Hamano
2025-07-03 11:32 ` Patrick Steinhardt
2025-06-19 22:57 ` [GSoC RFC PATCH v2 4/7] repo-info: add the --allow-empty flag Lucas Seiki Oshiro
2025-06-20 9:54 ` Karthik Nayak
2025-06-23 2:39 ` Lucas Seiki Oshiro
2025-06-20 21:39 ` Junio C Hamano
2025-06-23 9:26 ` Karthik Nayak
2025-06-23 20:28 ` Lucas Seiki Oshiro
2025-06-19 22:57 ` [GSoC RFC PATCH v2 5/7] repo-info: add the field references.format Lucas Seiki Oshiro
2025-06-20 22:26 ` Junio C Hamano
2025-06-24 14:03 ` Phillip Wood
2025-06-24 15:25 ` Junio C Hamano
2025-06-25 8:40 ` Phillip Wood
2025-07-03 11:32 ` Patrick Steinhardt [this message]
2025-07-04 21:11 ` Lucas Seiki Oshiro
2025-06-19 22:57 ` [GSoC RFC PATCH v2 6/7] repo-info: add field layout.bare Lucas Seiki Oshiro
2025-07-03 11:32 ` Patrick Steinhardt
2025-07-03 14:14 ` Lucas Seiki Oshiro
2025-07-04 8:32 ` Phillip Wood
2025-06-19 22:57 ` [GSoC RFC PATCH v2 7/7] repo-info: add field layout.shallow Lucas Seiki Oshiro
2025-06-23 13:42 ` [GSoC RFC PATCH v2 0/7] repo-info: add new command for retrieving repository info Phillip Wood
2025-06-23 18:49 ` Lucas Seiki Oshiro
2025-06-24 13:03 ` Phillip Wood
2025-06-24 13:43 ` Junio C Hamano
2025-07-01 22:18 ` Lucas Seiki Oshiro
2025-07-02 9:10 ` phillip.wood123
2025-07-06 23:19 ` [GSoC RFC PATCH v3 0/5] " Lucas Seiki Oshiro
2025-07-06 23:19 ` [GSoC RFC PATCH v3 1/5] repo-info: declare the repo-info command Lucas Seiki Oshiro
2025-07-06 23:19 ` [GSoC RFC PATCH v3 2/5] repo-info: add the --format flag Lucas Seiki Oshiro
2025-07-06 23:19 ` [GSoC RFC PATCH v3 3/5] repo-info: add the field references.format Lucas Seiki Oshiro
2025-07-06 23:19 ` [GSoC RFC PATCH v3 4/5] repo-info: add field layout.bare Lucas Seiki Oshiro
2025-07-06 23:19 ` [GSoC RFC PATCH v3 5/5] repo-info: add field layout.shallow Lucas Seiki Oshiro
2025-07-08 10:11 ` [GSoC RFC PATCH v3 0/5] repo-info: add new command for retrieving repository info Phillip Wood
2025-07-08 19:27 ` Lucas Seiki Oshiro
2025-07-10 13:15 ` Phillip Wood
2025-07-11 17:13 ` Lucas Seiki Oshiro
2025-07-11 17:37 ` Justin Tobler
2025-07-14 23:52 ` [GSoC RFC PATCH v4 0/4] repo: " Lucas Seiki Oshiro
2025-07-14 23:52 ` [GSoC RFC PATCH v4 1/4] repo: declare the repo command Lucas Seiki Oshiro
2025-07-15 11:52 ` Karthik Nayak
2025-07-15 11:59 ` Patrick Steinhardt
2025-07-15 18:38 ` Justin Tobler
2025-07-20 19:51 ` Lucas Seiki Oshiro
2025-07-15 18:19 ` Justin Tobler
2025-07-14 23:52 ` [GSoC RFC PATCH v4 2/4] repo: add the field references.format Lucas Seiki Oshiro
2025-07-15 11:59 ` Patrick Steinhardt
2025-07-18 19:13 ` Lucas Seiki Oshiro
2025-07-15 12:23 ` Karthik Nayak
2025-07-15 19:15 ` Justin Tobler
2025-07-16 5:38 ` Patrick Steinhardt
2025-07-16 14:04 ` Justin Tobler
2025-07-17 13:03 ` Patrick Steinhardt
2025-07-17 16:06 ` Justin Tobler
2025-07-18 20:26 ` Lucas Seiki Oshiro
2025-07-21 14:41 ` Justin Tobler
2025-07-14 23:52 ` [GSoC RFC PATCH v4 3/4] repo: add field layout.bare Lucas Seiki Oshiro
2025-07-14 23:52 ` [GSoC RFC PATCH v4 4/4] repo: add field layout.shallow Lucas Seiki Oshiro
2025-07-15 10:34 ` [GSoC RFC PATCH v4 0/4] repo: add new command for retrieving repository info Oswald Buddenhagen
2025-07-15 11:58 ` Patrick Steinhardt
2025-07-15 12:20 ` Oswald Buddenhagen
2025-07-15 19:36 ` Justin Tobler
2025-07-15 16:49 ` Junio C Hamano
2025-07-17 10:25 ` Oswald Buddenhagen
2025-07-17 10:42 ` Patrick Steinhardt
2025-07-16 20:20 ` Junio C Hamano
2025-07-16 20:33 ` Junio C Hamano
2025-07-21 22:05 ` Lucas Seiki Oshiro
2025-07-22 0:28 ` [GSoC PATCH v5 0/5] " Lucas Seiki Oshiro
2025-07-22 0:28 ` [GSoC PATCH v5 1/5] repo: declare the repo command Lucas Seiki Oshiro
2025-07-22 9:03 ` Karthik Nayak
2025-07-22 15:21 ` Junio C Hamano
2025-07-23 16:28 ` Lucas Seiki Oshiro
2025-07-23 17:48 ` Junio C Hamano
2025-07-24 6:22 ` Patrick Steinhardt
2025-07-24 16:06 ` Junio C Hamano
2025-07-25 5:10 ` Patrick Steinhardt
2025-07-26 21:54 ` Lucas Seiki Oshiro
2025-07-28 17:56 ` Junio C Hamano
2025-07-23 15:49 ` Lucas Seiki Oshiro
2025-07-23 20:03 ` Jean-Noël AVILA
2025-07-22 0:28 ` [GSoC PATCH v5 2/5] repo: add the field references.format Lucas Seiki Oshiro
2025-07-22 9:16 ` Karthik Nayak
2025-07-22 19:25 ` Justin Tobler
2025-07-23 14:53 ` Phillip Wood
2025-07-23 17:44 ` Lucas Seiki Oshiro
2025-07-23 18:26 ` Lucas Seiki Oshiro
2025-07-24 6:22 ` Patrick Steinhardt
2025-07-22 0:28 ` [GSoC PATCH v5 3/5] repo: add field layout.bare Lucas Seiki Oshiro
2025-07-22 0:28 ` [GSoC PATCH v5 4/5] repo: add field layout.shallow Lucas Seiki Oshiro
2025-07-22 0:28 ` [GSoC PATCH v5 5/5] repo: add the --format flag Lucas Seiki Oshiro
2025-07-22 9:26 ` Karthik Nayak
2025-07-24 6:22 ` Patrick Steinhardt
2025-07-27 17:51 ` [GSoC PATCH v5 0/5] repo: add new command for retrieving repository info Lucas Seiki Oshiro
2025-07-27 17:51 ` [GSoC PATCH v5 1/5] repo: declare the repo command Lucas Seiki Oshiro
2025-07-27 20:20 ` Eric Sunshine
2025-07-27 17:51 ` [GSoC PATCH v5 2/5] repo: add the field references.format Lucas Seiki Oshiro
2025-07-27 21:16 ` Eric Sunshine
2025-07-31 19:39 ` Lucas Seiki Oshiro
2025-07-29 9:35 ` Patrick Steinhardt
2025-07-31 19:49 ` Lucas Seiki Oshiro
2025-07-27 17:51 ` [GSoC PATCH v5 3/5] repo: add field layout.bare Lucas Seiki Oshiro
2025-07-27 17:51 ` [GSoC PATCH v5 4/5] repo: add field layout.shallow Lucas Seiki Oshiro
2025-07-27 21:45 ` Eric Sunshine
2025-07-27 17:51 ` [GSoC PATCH v5 5/5] repo: add the --format flag Lucas Seiki Oshiro
2025-07-27 22:02 ` Eric Sunshine
2025-07-29 0:15 ` Ben Knoble
2025-07-29 0:27 ` Eric Sunshine
2025-07-29 0:38 ` Ben Knoble
2025-07-29 0:39 ` Eric Sunshine
2025-07-31 23:01 ` Lucas Seiki Oshiro
2025-07-31 23:15 ` Lucas Seiki Oshiro
2025-07-27 20:11 ` [GSoC PATCH v5 0/5] repo: add new command for retrieving repository info Eric Sunshine
2025-07-29 9:35 ` Patrick Steinhardt
2025-07-30 15:26 ` Lucas Seiki Oshiro
2025-08-01 13:11 ` [GSoC PATCH v7 " Lucas Seiki Oshiro
2025-08-01 13:11 ` [GSoC PATCH v7 1/5] repo: declare the repo command Lucas Seiki Oshiro
2025-08-01 13:11 ` [GSoC PATCH v7 2/5] repo: add the field references.format Lucas Seiki Oshiro
2025-08-01 20:59 ` Eric Sunshine
2025-08-03 21:47 ` Lucas Seiki Oshiro
2025-08-01 13:11 ` [GSoC PATCH v7 3/5] repo: add the field layout.bare Lucas Seiki Oshiro
2025-08-01 21:21 ` Eric Sunshine
2025-08-03 22:54 ` Lucas Seiki Oshiro
2025-08-03 23:06 ` Eric Sunshine
2025-08-05 12:50 ` Patrick Steinhardt
2025-08-01 13:11 ` [GSoC PATCH v7 4/5] repo: add the field layout.shallow Lucas Seiki Oshiro
2025-08-05 12:50 ` Patrick Steinhardt
2025-08-01 13:11 ` [GSoC PATCH v7 5/5] repo: add the --format flag Lucas Seiki Oshiro
2025-08-01 19:25 ` Junio C Hamano
2025-08-01 20:27 ` Jean-Noël AVILA
2025-08-01 21:50 ` Eric Sunshine
2025-08-05 12:50 ` Patrick Steinhardt
2025-08-05 12:50 ` [GSoC PATCH v7 0/5] repo: add new command for retrieving repository info Patrick Steinhardt
2025-08-06 19:55 ` [GSoC PATCH v8 " Lucas Seiki Oshiro
2025-08-06 19:55 ` [GSoC PATCH v8 1/5] repo: declare the repo command Lucas Seiki Oshiro
2025-08-06 19:55 ` [GSoC PATCH v8 2/5] repo: add the field references.format Lucas Seiki Oshiro
2025-08-07 7:43 ` Karthik Nayak
2025-08-06 19:55 ` [GSoC PATCH v8 3/5] repo: add the field layout.bare Lucas Seiki Oshiro
2025-08-07 5:20 ` Patrick Steinhardt
2025-08-06 19:55 ` [GSoC PATCH v8 4/5] repo: add the field layout.shallow Lucas Seiki Oshiro
2025-08-06 19:55 ` [GSoC PATCH v8 5/5] repo: add the --format flag Lucas Seiki Oshiro
2025-08-07 5:20 ` Patrick Steinhardt
2025-08-07 15:44 ` Junio C Hamano
2025-08-06 22:38 ` [GSoC PATCH v8 0/5] repo: add new command for retrieving repository info Junio C Hamano
2025-08-07 7:48 ` Karthik Nayak
2025-08-07 15:02 ` [GSoC PATCH v9 " Lucas Seiki Oshiro
2025-08-07 15:02 ` [GSoC PATCH v9 1/5] repo: declare the repo command Lucas Seiki Oshiro
2025-08-07 15:02 ` [GSoC PATCH v9 2/5] repo: add the field references.format Lucas Seiki Oshiro
2025-08-11 5:12 ` Eric Sunshine
2025-08-11 14:41 ` Phillip Wood
2025-08-11 15:44 ` Junio C Hamano
2025-08-13 21:18 ` Lucas Seiki Oshiro
2025-08-13 21:46 ` Eric Sunshine
2025-08-13 22:24 ` Lucas Seiki Oshiro
2025-08-14 13:58 ` Phillip Wood
2025-08-07 15:02 ` [GSoC PATCH v9 3/5] repo: add the field layout.bare Lucas Seiki Oshiro
2025-08-11 5:21 ` Eric Sunshine
2025-08-14 18:22 ` Lucas Seiki Oshiro
2025-08-14 18:32 ` Eric Sunshine
2025-08-14 18:51 ` Junio C Hamano
2025-08-14 22:05 ` Eric Sunshine
2025-08-15 1:20 ` Junio C Hamano
2025-08-14 22:18 ` Lucas Seiki Oshiro
2025-08-14 23:41 ` Eric Sunshine
2025-08-07 15:02 ` [GSoC PATCH v9 4/5] repo: add the field layout.shallow Lucas Seiki Oshiro
2025-08-07 15:02 ` [GSoC PATCH v9 5/5] repo: add the --format flag Lucas Seiki Oshiro
2025-08-11 5:44 ` Eric Sunshine
2025-08-08 5:45 ` [GSoC PATCH v9 0/5] repo: add new command for retrieving repository info Patrick Steinhardt
2025-08-08 15:02 ` Junio C Hamano
2025-08-08 9:20 ` Karthik Nayak
2025-08-15 13:55 ` [GSoC PATCH v10 0/5] repo: declare the repo command Lucas Seiki Oshiro
2025-08-15 13:55 ` [GSoC PATCH v10 1/5] " Lucas Seiki Oshiro
2025-08-15 13:55 ` [GSoC PATCH v10 2/5] repo: add the field references.format Lucas Seiki Oshiro
2025-08-15 18:40 ` Junio C Hamano
2025-08-15 19:12 ` Lucas Seiki Oshiro
2025-08-15 13:55 ` [GSoC PATCH v10 3/5] repo: add the field layout.bare Lucas Seiki Oshiro
2025-08-15 13:55 ` [GSoC PATCH v10 4/5] repo: add the field layout.shallow Lucas Seiki Oshiro
2025-08-15 19:36 ` Junio C Hamano
2025-08-15 13:55 ` [GSoC PATCH v10 5/5] repo: add the --format flag Lucas Seiki Oshiro
2025-08-15 19:23 ` Junio C Hamano
2025-08-16 22:45 ` [GSoC PATCH v11 0/5] repo: declare the repo command Lucas Seiki Oshiro
2025-08-16 22:45 ` [GSoC PATCH v11 1/5] " Lucas Seiki Oshiro
2025-08-16 22:46 ` [GSoC PATCH v11 2/5] repo: add the field references.format Lucas Seiki Oshiro
2025-08-16 22:46 ` [GSoC PATCH v11 3/5] repo: add the field layout.bare Lucas Seiki Oshiro
2025-08-16 22:46 ` [GSoC PATCH v11 4/5] repo: add the field layout.shallow Lucas Seiki Oshiro
2025-08-16 22:46 ` [GSoC PATCH v11 5/5] repo: add the --format flag Lucas Seiki Oshiro
2025-08-17 16:21 ` [GSoC PATCH v11 0/5] repo: declare the repo command 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=aGZqN-oqctJ79Chz@pks.im \
--to=ps@pks.im \
--cc=ben.knoble@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=karthik.188@gmail.com \
--cc=lucasseikioshiro@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).