From: Junio C Hamano <gitster@pobox.com>
To: Yukai Chou <muzimuzhi@gmail.com>
Cc: git@vger.kernel.org, ps@pks.im
Subject: Re: builtin/config: --name-only doesn't imply --show-names in "git config get"
Date: Wed, 21 Aug 2024 13:59:43 -0700 [thread overview]
Message-ID: <xmqqttfdwq0w.fsf@gitster.g> (raw)
In-Reply-To: <CAEg0tHQVK9hgcHTzn-ZPdwoFbbYFB2joeT0jLQgtD6yEH+1GiA@mail.gmail.com> (Yukai Chou's message of "Thu, 22 Aug 2024 04:28:34 +0800")
Yukai Chou <muzimuzhi@gmail.com> writes:
> Junio C Hamano <gitster@pobox.com> 于2024年8月22日周四 00:07写道:
>>
>> Yukai Chou <muzimuzhi@gmail.com> writes:
>>
>> > # get empty line(s)
>> > git config get --all --name-only remote.origin.fetch
>> > # get lines of name(s)
>> > git config get --all --show-names --name-only remote.origin.fetch
>> >
>> > Either the doc or the behavior of --name-only needs some adjustment.
>>
>> This argues for making "all" imply we need to show the name of the
>> configuration variable,
>
> Sorry can you elaborate on what that "all" meant? A new option "--show-all"?
Sorry, but "--all" is probably a red herring.
What I wanted to say was that we can
(1) get rid of "--show-name",
(2) have the combination of options that can emit values for more
than one key to automatically show both name and value, and
(3) add "--hide-name" so that such command can still show only the
value.
where I mixed up (2) and "all". In fact, "--all" is not something
that gives values for more than one key (it is things like regexp
and urlmatch).
For example:
$ git config --get-regexp 'sendemail\..*'
would show values for more than one variable, and depending on the
variable, it may show the values for one variable more than once.
According to the documentation, this was replaced with
--get-regexp <name-regexp>::
Replaced by `git config get --all --show-names --regexp <name-regexp>`.
but it could have been
git config get --all --regexp <name-regexp>
as it is clear --regexp could give results for more than one key.
This points at a bug in the documentation, by the way. "git config --get-all"
is described like so:
--get-all <name> [<value-pattern>]::
Replaced by `git config get [--value=<pattern>] --all --show-names <name>`.
but this gives values for only one key, and the command does not
show key names. It is replaced by
git config get [--value=<pattern>] --all <name>
without "--show-names".
next prev parent reply other threads:[~2024-08-21 20:59 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-21 8:10 builtin/config: --name-only doesn't imply --show-names in "git config get" Yukai Chou
2024-08-21 16:06 ` Junio C Hamano
2024-08-21 20:28 ` Yukai Chou
2024-08-21 20:59 ` Junio C Hamano [this message]
2024-08-22 5:57 ` Patrick Steinhardt
2024-08-22 14:54 ` 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=xmqqttfdwq0w.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=muzimuzhi@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 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).