{"thread":{"id":"63715","subject":"[PATCH 0/5] doc: config: update for the ps/config-subcommands series","startedAt":"2025-06-30T19:10:49Z","lastAt":"2025-07-01T17:32:07Z","messageCount":22,"participants":["kristofferhaugsbakk@fastmail.com","Eric Sunshine","Junio C Hamano","Kristoffer Haugsbakk","Patrick Steinhardt"],"isPatch":true,"patchVersion":1,"patchTotal":5},"messages":[{"id":"520958","messageId":"cover.1751310455.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":null,"subject":"[PATCH 0/5] doc: config: update for the ps/config-subcommands series","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-06-30T19:10:22Z","receivedAt":"2025-06-30T19:10:49Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nUpdate git-config(1) according to the ps/config-subcommands series\n(fe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15)):\n\n1. Document `--show-names`\n2. Document `--value`\n3. Mention `--value` throughout instead of the deprecated\n   `value-pattern`\n4. Mention `--url` in the synopsis\n\nKristoffer Haugsbakk (5):\n  doc: config: document --[no-]show-names\n  doc: config: use --value=<pattern> consistently\n  doc: config: document --[no-]value\n  doc: config: use --value instead of value-pattern\n  doc: config: mention --url in the synopsis\n\n Documentation/git-config.adoc | 28 +++++++++++++++++++++-------\n 1 file changed, 21 insertions(+), 7 deletions(-)\n\n\nbase-commit: cf6f63ea6bf35173e02e18bdc6a4ba41288acff9\n-- \n2.50.0.138.gf67de2ec4e7\n\n"},{"id":"520959","messageId":"7d66a5403b31248995e605ed9330c0dfb2b80321.1751310455.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"[PATCH 1/5] doc: config: document --[no-]show-names","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-06-30T19:10:23Z","receivedAt":"2025-06-30T19:10:51Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThese options were introduced in 4e513890008 (builtin/config:\nintroduce \"get\" subcommand, 2024-05-06) but not documented here.\nUse the description from the source code.\n\nDocument this option and the negated form according to the current\nconvention.[1]\n\n`--show-names` is also the default when `--get-regexp` is given.  But\ndon’t mention it here since all the deprecated modes are quarantined in\nthe “Deprecated Modes” section.\n\n[1]: https://lore.kernel.org/git/xmqqcyct1mtq.fsf@gitster.g/\n\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n\nNotes (series):\n    >The default is `--no-show-names` unless `--url` is given and there are\n    > no subsections in _<name>_.\n    \n    See: d4770964d50 (config: \"git config --get-urlmatch\" parses\n    section.<url>.key, 2013-07-31)\n\n Documentation/git-config.adoc | 6 ++++++\n 1 file changed, 6 insertions(+)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex 936e0c5130f..e05bf813d46 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -259,6 +259,12 @@ Valid `<type>`'s include:\n \tOutput only the names of config variables for `list` or\n \t`get`.\n \n+`--show-names`::\n+`--no-show-names`::\n+\tWith `get`, show config keys in addition to their values. The\n+\tdefault is `--no-show-names` unless `--url` is given and there\n+\tare no subsections in _<name>_.\n+\n --show-origin::\n \tAugment the output of all queried config options with the\n \torigin type (file, standard input, blob, command line) and\n-- \n2.50.0.138.gf67de2ec4e7\n\n"},{"id":"520960","messageId":"a52322528dac34827abd5100a2d3ee49e376e2ed.1751310455.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"[PATCH 2/5] doc: config: use --value=<pattern> consistently","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-06-30T19:10:24Z","receivedAt":"2025-06-30T19:10:55Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThis option was introduced in a series of commits from fe3ccc7aab (Merge\nbranch 'ps/config-subcommands', 2024-05-15).  But two styles were used\nfor the value provided to the option:\n\n1. Synopsis: `--value=<value>`\n2. Deprecated Modes: `--value=<pattern>`\n\n(2) is also used in the synopsis on the command.\n\nUse (2) consistently throughout since it’s a pattern in the general\ncase (`value` sounds more generic).\n\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n Documentation/git-config.adoc | 6 +++---\n 1 file changed, 3 insertions(+), 3 deletions(-)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex e05bf813d46..d3ddc538555 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -10,9 +10,9 @@ SYNOPSIS\n --------\n [verse]\n 'git config list' [<file-option>] [<display-option>] [--includes]\n-'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<value>] [--fixed-value] [--default=<default>] <name>\n-'git config set' [<file-option>] [--type=<type>] [--all] [--value=<value>] [--fixed-value] <name> <value>\n-'git config unset' [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\n+'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\n+'git config set' [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\n+'git config unset' [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\n 'git config rename-section' [<file-option>] <old-name> <new-name>\n 'git config remove-section' [<file-option>] <name>\n 'git config edit' [<file-option>]\n-- \n2.50.0.138.gf67de2ec4e7\n\n"},{"id":"520961","messageId":"f8407f331e0e4bf66a7e26b87f9b021ab950a4ad.1751310455.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"[PATCH 3/5] doc: config: document --[no-]value","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-06-30T19:10:25Z","receivedAt":"2025-06-30T19:10:58Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThese options were introduced in a series of commits from\nfe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15).[1]\nBut they were not documented here.\n\nDocument this option and the negated form according to the current\nconvention.[2]\n\n† 1: `--value` is a replacement for the `value-pattern`\n    positional argument\n[2]: https://lore.kernel.org/git/xmqqcyct1mtq.fsf@gitster.g/\n\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n Documentation/git-config.adoc | 8 ++++++++\n 1 file changed, 8 insertions(+)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex d3ddc538555..03808b18d3e 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -200,6 +200,14 @@ See also <<FILES>>.\n \tsection in linkgit:gitrevisions[7] for a more complete list of\n \tways to spell blob names.\n \n+`--value=<pattern>`::\n+`--no-value`::\n+\tWith `get`, `set`, and `unset`, match only against\n+\t_<pattern>_. The pattern is an extended regular expression unless\n+\t`--fixed-value` is given.\n++\n+Use `--no-value` to unset _<pattern>_.\n+\n --fixed-value::\n \tWhen used with the `value-pattern` argument, treat `value-pattern` as\n \tan exact string instead of a regular expression. This will restrict\n-- \n2.50.0.138.gf67de2ec4e7\n\n"},{"id":"520962","messageId":"e895215e0cd3bd29c66c3facd168611289af9981.1751310455.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"[PATCH 4/5] doc: config: use --value instead of value-pattern","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-06-30T19:10:26Z","receivedAt":"2025-06-30T19:11:02Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThis option was introduced in a series of commits from fe3ccc7aab (Merge\nbranch 'ps/config-subcommands', 2024-05-15) and deprecated\n`value-pattern`.  But `value-pattern` is still used throughout the doc.\n\nThe deprecated modes have been quarantined in the “Deprecated Modes”\nsection.  So let’s only use `--value=<pattern>` in the rest of the doc.\n\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n Documentation/git-config.adoc | 8 ++++----\n 1 file changed, 4 insertions(+), 4 deletions(-)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex 03808b18d3e..9d8f9bb04e5 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -26,7 +26,7 @@ escaped.\n \n Multiple lines can be added to an option by using the `--append` option.\n If you want to update or unset an option which can occur on multiple\n-lines, a `value-pattern` (which is an extended regular expression,\n+lines, `--value=<pattern>` (which is an extended regular expression,\n unless the `--fixed-value` option is given) needs to be given.  Only the\n existing values that match the pattern are updated or unset.  If\n you want to handle the lines that do *not* match the pattern, just\n@@ -109,7 +109,7 @@ OPTIONS\n \n --replace-all::\n \tDefault behavior is to replace at most one line. This replaces\n-\tall lines matching the key (and optionally the `value-pattern`).\n+\tall lines matching the key (and optionally `--value=<pattern>`).\n \n --append::\n \tAdds a new line to the option without altering any existing\n@@ -209,10 +209,10 @@ See also <<FILES>>.\n Use `--no-value` to unset _<pattern>_.\n \n --fixed-value::\n-\tWhen used with the `value-pattern` argument, treat `value-pattern` as\n+\tWhen used with `--value=<pattern>`, treat _<pattern>_ as\n \tan exact string instead of a regular expression. This will restrict\n \tthe name/value pairs that are matched to only those where the value\n-\tis exactly equal to the `value-pattern`.\n+\tis exactly equal to _<pattern>_.\n \n --type <type>::\n   'git config' will ensure that any input or output is valid under the given\n-- \n2.50.0.138.gf67de2ec4e7\n\n"},{"id":"520963","messageId":"ac3257a934d4c59de03757c2471c7067a8186108.1751310455.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"[PATCH 5/5] doc: config: mention --url in the synopsis","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-06-30T19:10:27Z","receivedAt":"2025-06-30T19:11:06Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\n4e513890008 (builtin/config: introduce \"get\" subcommand, 2024-05-06)\nintroduced `get` and `--url` but didn’t add `--url` to the synopsis.\n\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n Documentation/git-config.adoc | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex 9d8f9bb04e5..511b2e26bfb 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -10,7 +10,7 @@ SYNOPSIS\n --------\n [verse]\n 'git config list' [<file-option>] [<display-option>] [--includes]\n-'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\n+'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] [--url=<url>] <name>\n 'git config set' [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\n 'git config unset' [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\n 'git config rename-section' [<file-option>] <old-name> <new-name>\n-- \n2.50.0.138.gf67de2ec4e7\n\n"},{"id":"520964","messageId":"CAPig+cT+2vY5niZCWN_27w3gvSNTAQsBA4=+AyUHKO6iofUD9g@mail.gmail.com","threadId":"63715","inReplyTo":"f8407f331e0e4bf66a7e26b87f9b021ab950a4ad.1751310455.git.code@khaugsbakk.name","subject":"Re: [PATCH 3/5] doc: config: document --[no-]value","fromName":"Eric Sunshine","fromEmail":"sunshine@sunshineco.com","sentAt":"2025-06-30T19:26:51Z","receivedAt":"2025-06-30T19:27:05Z","isPatch":true,"sender":{"key":"sunshine@sunshineco.com","avatar":"https://avatars.githubusercontent.com/u/163641?v=4"},"body":"On Mon, Jun 30, 2025 at 3:13 PM <kristofferhaugsbakk@fastmail.com> wrote:\n> These options were introduced in a series of commits from\n> fe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15).[1]\n> But they were not documented here.\n>\n> Document this option and the negated form according to the current\n> convention.[2]\n>\n> † 1: `--value` is a replacement for the `value-pattern`\n>     positional argument\n> [2]: https://lore.kernel.org/git/xmqqcyct1mtq.fsf@gitster.g/\n\ns/† 1/[1]/\n\n(Not itself worth a reroll.)\n\n> Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n"},{"id":"520977","messageId":"xmqqwm8sltbc.fsf@gitster.g","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"Re: [PATCH 0/5] doc: config: update for the ps/config-subcommands series","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-06-30T23:10:15Z","receivedAt":"2025-06-30T23:10:17Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"kristofferhaugsbakk@fastmail.com writes:\n\n> From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n>\n> Update git-config(1) according to the ps/config-subcommands series\n> (fe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15)):\n>\n> 1. Document `--show-names`\n> 2. Document `--value`\n> 3. Mention `--value` throughout instead of the deprecated\n>    `value-pattern`\n> 4. Mention `--url` in the synopsis\n>\n> Kristoffer Haugsbakk (5):\n>   doc: config: document --[no-]show-names\n>   doc: config: use --value=<pattern> consistently\n>   doc: config: document --[no-]value\n>   doc: config: use --value instead of value-pattern\n>   doc: config: mention --url in the synopsis\n>\n>  Documentation/git-config.adoc | 28 +++++++++++++++++++++-------\n>  1 file changed, 21 insertions(+), 7 deletions(-)\n>\n>\n> base-commit: cf6f63ea6bf35173e02e18bdc6a4ba41288acff9\n\nHave you run tests with this series, especially t0450?\n\n$ sh t0450-*.sh -i -v\n...\nexpecting success of 0450.142 'config -h output and SYNOPSIS agree':\n                t2s=\"$(adoc_to_synopsis \"$builtin\")\" &&\n                if test \"$builtin\" = \"merge-tree\"\n                then\n                        test_when_finished \"rm -f t2s.new\" &&\n                        sed -e 's/ (deprecated)$//g' <\"$t2s\" >t2s.new\n                        t2s=t2s.new\n                fi &&\n                h2s=\"$(help_to_synopsis \"$builtin\")\" &&\n\n                # The *.adoc and -h use different spacing for the\n                # alignment of continued usage output, normalize it.\n                align_after_nl \"$builtin\" <\"$t2s\" >adoc &&\n                align_after_nl \"$builtin\" <\"$h2s\" >help &&\n                test_cmp adoc help\n\n--- adoc        2025-06-30 23:09:02.715600047 +0000\n+++ help        2025-06-30 23:09:02.723600026 +0000\n@@ -1,7 +1,7 @@\n git config list [<file-option>] [<display-option>] [--includes]\n-git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] [--url=<url>] <name>\n-git config set [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\n-git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\n+git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<value>] [--fixed-value] [--default=<default>] <name>\n+git config set [<file-option>] [--type=<type>] [--all] [--value=<value>] [--fixed-value] <name> <value>\n+git config unset [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\n git config rename-section [<file-option>] <old-name> <new-name>\n git config remove-section [<file-option>] <name>\n git config edit [<file-option>]\nnot ok 142 - config -h output and SYNOPSIS agree\n#\n#                       t2s=\"$(adoc_to_synopsis \"$builtin\")\" &&\n#                       if test \"$builtin\" = \"merge-tree\"\n#                       then\n#                               test_when_finished \"rm -f t2s.new\" &&\n#                               sed -e 's/ (deprecated)$//g' <\"$t2s\" >t2s.new\n#                               t2s=t2s.new\n#                       fi &&\n#                       h2s=\"$(help_to_synopsis \"$builtin\")\" &&\n#\n#                       # The *.adoc and -h use different spacing for the\n#                       # alignment of continued usage output, normalize it.\n#                       align_after_nl \"$builtin\" <\"$t2s\" >adoc &&\n#                       align_after_nl \"$builtin\" <\"$h2s\" >help &&\n#                       test_cmp adoc help\n#\n1..142\n"},{"id":"520992","messageId":"01ef5e34-66d3-40bb-aca9-8f12ad95c000@app.fastmail.com","threadId":"63715","inReplyTo":"xmqqwm8sltbc.fsf@gitster.g","subject":"Re: [PATCH 0/5] doc: config: update for the ps/config-subcommands series","fromName":"Kristoffer Haugsbakk","fromEmail":"code@khaugsbakk.name","sentAt":"2025-07-01T07:05:07Z","receivedAt":"2025-07-01T07:05:29Z","isPatch":true,"sender":{"key":"code@khaugsbakk.name","avatar":"https://avatars.githubusercontent.com/u/2229597?v=4"},"body":"On Tue, Jul 1, 2025, at 01:10, Junio C Hamano wrote:\n> Have you run tests with this series, especially t0450?\n\nNo. Sorry about that.\n"},{"id":"520993","messageId":"47e5726c-a401-46a2-b975-ab6b311cbd4a@app.fastmail.com","threadId":"63715","inReplyTo":"ac3257a934d4c59de03757c2471c7067a8186108.1751310455.git.code@khaugsbakk.name","subject":"Re: [PATCH 5/5] doc: config: mention --url in the synopsis","fromName":"Kristoffer Haugsbakk","fromEmail":"code@khaugsbakk.name","sentAt":"2025-07-01T07:09:42Z","receivedAt":"2025-07-01T07:10:15Z","isPatch":true,"sender":{"key":"code@khaugsbakk.name","avatar":"https://avatars.githubusercontent.com/u/2229597?v=4"},"body":"On Mon, Jun 30, 2025, at 21:10, kristofferhaugsbakk@fastmail.com wrote:\n> From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n>\n> 4e513890008 (builtin/config: introduce \"get\" subcommand, 2024-05-06)\n> introduced `get` and `--url` but didn’t add `--url` to the synopsis.\n>\n> Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThis makes `t/t0450-txt-doc-vs-help.sh` fail\n\nhttps://lore.kernel.org/git/xmqqwm8sltbc.fsf@gitster.g/T/#m0e3ad91ded146f9c13f4ee52e4c37b15330c62a9\n"},{"id":"520994","messageId":"c61a5f21-06c5-40d5-8f35-f478a1db83d0@app.fastmail.com","threadId":"63715","inReplyTo":"a52322528dac34827abd5100a2d3ee49e376e2ed.1751310455.git.code@khaugsbakk.name","subject":"Re: [PATCH 2/5] doc: config: use --value=<pattern> consistently","fromName":"Kristoffer Haugsbakk","fromEmail":"code@khaugsbakk.name","sentAt":"2025-07-01T07:27:58Z","receivedAt":"2025-07-01T07:28:20Z","isPatch":true,"sender":{"key":"code@khaugsbakk.name","avatar":"https://avatars.githubusercontent.com/u/2229597?v=4"},"body":"On Mon, Jun 30, 2025, at 21:10, kristofferhaugsbakk@fastmail.com wrote:\n> From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n>\n> This option was introduced in a series of commits from fe3ccc7aab (Merge\n> branch 'ps/config-subcommands', 2024-05-15).  But two styles were used\n> for the value provided to the option:\n>\n> 1. Synopsis: `--value=<value>`\n> 2. Deprecated Modes: `--value=<pattern>`\n>\n> (2) is also used in the synopsis on the command.\n>\n> Use (2) consistently throughout since it’s a pattern in the general\n> case (`value` sounds more generic).\n>\n> Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThis missed some `--value=<value>`.\n"},{"id":"520995","messageId":"f636050c-fb27-4798-8d1e-f9fee21625ad@app.fastmail.com","threadId":"63715","inReplyTo":"a52322528dac34827abd5100a2d3ee49e376e2ed.1751310455.git.code@khaugsbakk.name","subject":"Re: [PATCH 2/5] doc: config: use --value=<pattern> consistently","fromName":"Kristoffer Haugsbakk","fromEmail":"code@khaugsbakk.name","sentAt":"2025-07-01T08:00:09Z","receivedAt":"2025-07-01T08:01:43Z","isPatch":true,"sender":{"key":"code@khaugsbakk.name","avatar":"https://avatars.githubusercontent.com/u/2229597?v=4"},"body":"On Mon, Jun 30, 2025, at 21:10, kristofferhaugsbakk@fastmail.com wrote:\n> From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n>\n> This option was introduced in a series of commits from fe3ccc7aab (Merge\n> branch 'ps/config-subcommands', 2024-05-15).  But two styles were used\n> for the value provided to the option:\n>\n> 1. Synopsis: `--value=<value>`\n> 2. Deprecated Modes: `--value=<pattern>`\n>\n> (2) is also used in the synopsis on the command.\n>\n> Use (2) consistently throughout since it’s a pattern in the general\n> case (`value` sounds more generic).\n>\n> Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThis also breaks t/t0450-txt-doc-vs-help.sh\n"},{"id":"521003","messageId":"aGOx3C7-9NNi7h8Z@pks.im","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"Re: [PATCH 0/5] doc: config: update for the ps/config-subcommands series","fromName":"Patrick Steinhardt","fromEmail":"ps@pks.im","sentAt":"2025-07-01T10:01:00Z","receivedAt":"2025-07-01T10:01:07Z","isPatch":true,"sender":{"key":"ps@pks.im","avatar":"https://avatars.githubusercontent.com/u/4056630?v=4"},"body":"On Mon, Jun 30, 2025 at 09:10:22PM +0200, kristofferhaugsbakk@fastmail.com wrote:\n> From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n> \n> Update git-config(1) according to the ps/config-subcommands series\n> (fe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15)):\n> \n> 1. Document `--show-names`\n> 2. Document `--value`\n> 3. Mention `--value` throughout instead of the deprecated\n>    `value-pattern`\n> 4. Mention `--url` in the synopsis\n> \n> Kristoffer Haugsbakk (5):\n>   doc: config: document --[no-]show-names\n>   doc: config: use --value=<pattern> consistently\n>   doc: config: document --[no-]value\n>   doc: config: use --value instead of value-pattern\n>   doc: config: mention --url in the synopsis\n> \n>  Documentation/git-config.adoc | 28 +++++++++++++++++++++-------\n>  1 file changed, 21 insertions(+), 7 deletions(-)\n> \n> \n> base-commit: cf6f63ea6bf35173e02e18bdc6a4ba41288acff9\n\nExcept for the issues mentioned by Eric and Junio the changes look\nsensible to me. Thanks for improving these docs!\n\nPatrick\n"},{"id":"521005","messageId":"adeb38ed-fdd3-4261-9c5a-901813b102e2@app.fastmail.com","threadId":"63715","inReplyTo":"aGOx3C7-9NNi7h8Z@pks.im","subject":"Re: [PATCH 0/5] doc: config: update for the ps/config-subcommands series","fromName":"Kristoffer Haugsbakk","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-07-01T10:15:45Z","receivedAt":"2025-07-01T10:16:06Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"On Tue, Jul 1, 2025, at 12:01, Patrick Steinhardt wrote:\n> Except for the issues mentioned by Eric and Junio the changes look\n> sensible to me. Thanks for improving these docs!\n\nThanks. I’ll add your Acks to the changes.\n"},{"id":"521059","messageId":"cover.1751382830.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751310455.git.code@khaugsbakk.name","subject":"[PATCH v2 0/5] doc: config: update for the ps/config-subcommands series","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-07-01T15:14:27Z","receivedAt":"2025-07-01T15:14:54Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nUpdate git-config(1) according to the ps/config-subcommands series\n(fe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15)):\n\n1. Document `--show-names`\n2. Document `--value`\n3. Mention `--value` throughout instead of the deprecated\n   `value-pattern`\n4. Mention `--url` in the synopsis\n\n§ Changes in v2\n\n• Unbreak t/t0450-txt-doc-vs-help.sh caused by source/doc synopsis being\n  out of synch\n• I missed some `--value=<value>` in patch 2/5\n• Add acks from Patrick\n  • Link: https://lore.kernel.org/git/aGOx3C7-9NNi7h8Z@pks.im/\n• Use area=config for patches that touch both the source code (builtin)\n  and the doc\n\nKristoffer Haugsbakk (5):\n  doc: config: document --[no-]show-names\n  config: use --value=<pattern> consistently\n  doc: config: document --[no-]value\n  doc: config: use --value instead of value-pattern\n  config: mention --url in the synopsis\n\n Documentation/git-config.adoc | 28 +++++++++++++++++++++-------\n builtin/config.c              | 12 ++++++------\n 2 files changed, 27 insertions(+), 13 deletions(-)\n\nInterdiff against v1:\ndiff --git a/builtin/config.c b/builtin/config.c\nindex f70d6354772..5efe2730106 100644\n--- a/builtin/config.c\n+++ b/builtin/config.c\n@@ -17,9 +17,9 @@\n \n static const char *const builtin_config_usage[] = {\n \tN_(\"git config list [<file-option>] [<display-option>] [--includes]\"),\n-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<value>] [--fixed-value] [--default=<default>] <name>\"),\n-\tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<value>] [--fixed-value] <name> <value>\"),\n-\tN_(\"git config unset [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\"),\n+\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] [--url=<url>] <name>\"),\n+\tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n+\tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n \tN_(\"git config rename-section [<file-option>] <old-name> <new-name>\"),\n \tN_(\"git config remove-section [<file-option>] <name>\"),\n \tN_(\"git config edit [<file-option>]\"),\n@@ -33,17 +33,17 @@ static const char *const builtin_config_list_usage[] = {\n };\n \n static const char *const builtin_config_get_usage[] = {\n-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp=<regexp>] [--value=<value>] [--fixed-value] [--default=<default>] <name>\"),\n+\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp=<regexp>] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\"),\n \tNULL\n };\n \n static const char *const builtin_config_set_usage[] = {\n-\tN_(\"git config set [<file-option>] [--type=<type>] [--comment=<message>] [--all] [--value=<value>] [--fixed-value] <name> <value>\"),\n+\tN_(\"git config set [<file-option>] [--type=<type>] [--comment=<message>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n \tNULL\n };\n \n static const char *const builtin_config_unset_usage[] = {\n-\tN_(\"git config unset [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\"),\n+\tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n \tNULL\n };\n \nRange-diff against v1:\n1:  7d66a5403b3 ! 1:  3c90ec17459 doc: config: document --[no-]show-names\n    @@ Commit message\n     \n         [1]: https://lore.kernel.org/git/xmqqcyct1mtq.fsf@gitster.g/\n     \n    +    Acked-by: Patrick Steinhardt <ps@pks.im>\n         Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n     \n     \n2:  a52322528da ! 2:  fa183e470c5 doc: config: use --value=<pattern> consistently\n    @@ Metadata\n     Author: Kristoffer Haugsbakk <code@khaugsbakk.name>\n     \n      ## Commit message ##\n    -    doc: config: use --value=<pattern> consistently\n    +    config: use --value=<pattern> consistently\n     \n         This option was introduced in a series of commits from fe3ccc7aab (Merge\n         branch 'ps/config-subcommands', 2024-05-15).  But two styles were used\n    @@ Commit message\n         Use (2) consistently throughout since it’s a pattern in the general\n         case (`value` sounds more generic).\n     \n    +    Acked-by: Patrick Steinhardt <ps@pks.im>\n         Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n     \n    +\n    + ## Notes (series) ##\n    +    v2:\n    +    • Unbreak t/t0450-txt-doc-vs-help.sh caused by source/doc synopsis being\n    +      out of synch\n    +    • Replaced the rest that I missed\n    +\n      ## Documentation/git-config.adoc ##\n     @@ Documentation/git-config.adoc: SYNOPSIS\n      --------\n    @@ Documentation/git-config.adoc: SYNOPSIS\n      'git config rename-section' [<file-option>] <old-name> <new-name>\n      'git config remove-section' [<file-option>] <name>\n      'git config edit' [<file-option>]\n    +\n    + ## builtin/config.c ##\n    +@@\n    + \n    + static const char *const builtin_config_usage[] = {\n    + \tN_(\"git config list [<file-option>] [<display-option>] [--includes]\"),\n    +-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<value>] [--fixed-value] [--default=<default>] <name>\"),\n    +-\tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<value>] [--fixed-value] <name> <value>\"),\n    +-\tN_(\"git config unset [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\"),\n    ++\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\"),\n    ++\tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n    ++\tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n    + \tN_(\"git config rename-section [<file-option>] <old-name> <new-name>\"),\n    + \tN_(\"git config remove-section [<file-option>] <name>\"),\n    + \tN_(\"git config edit [<file-option>]\"),\n    +@@ builtin/config.c: static const char *const builtin_config_list_usage[] = {\n    + };\n    + \n    + static const char *const builtin_config_get_usage[] = {\n    +-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp=<regexp>] [--value=<value>] [--fixed-value] [--default=<default>] <name>\"),\n    ++\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp=<regexp>] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\"),\n    + \tNULL\n    + };\n    + \n    + static const char *const builtin_config_set_usage[] = {\n    +-\tN_(\"git config set [<file-option>] [--type=<type>] [--comment=<message>] [--all] [--value=<value>] [--fixed-value] <name> <value>\"),\n    ++\tN_(\"git config set [<file-option>] [--type=<type>] [--comment=<message>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n    + \tNULL\n    + };\n    + \n    + static const char *const builtin_config_unset_usage[] = {\n    +-\tN_(\"git config unset [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\"),\n    ++\tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n    + \tNULL\n    + };\n    + \n3:  f8407f331e0 ! 3:  c85b42e3331 doc: config: document --[no-]value\n    @@ Commit message\n         Document this option and the negated form according to the current\n         convention.[2]\n     \n    -    † 1: `--value` is a replacement for the `value-pattern`\n    +    [1]: `--value` is a replacement for the `value-pattern`\n             positional argument\n         [2]: https://lore.kernel.org/git/xmqqcyct1mtq.fsf@gitster.g/\n     \n    +    Acked-by: Patrick Steinhardt <ps@pks.im>\n         Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n     \n      ## Documentation/git-config.adoc ##\n4:  e895215e0cd ! 4:  e5eee1a0541 doc: config: use --value instead of value-pattern\n    @@ Commit message\n         The deprecated modes have been quarantined in the “Deprecated Modes”\n         section.  So let’s only use `--value=<pattern>` in the rest of the doc.\n     \n    +    Acked-by: Patrick Steinhardt <ps@pks.im>\n         Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n     \n      ## Documentation/git-config.adoc ##\n5:  ac3257a934d ! 5:  8300e0fc349 doc: config: mention --url in the synopsis\n    @@ Metadata\n     Author: Kristoffer Haugsbakk <code@khaugsbakk.name>\n     \n      ## Commit message ##\n    -    doc: config: mention --url in the synopsis\n    +    config: mention --url in the synopsis\n     \n         4e513890008 (builtin/config: introduce \"get\" subcommand, 2024-05-06)\n         introduced `get` and `--url` but didn’t add `--url` to the synopsis.\n     \n    +    Acked-by: Patrick Steinhardt <ps@pks.im>\n         Signed-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n     \n    +\n    + ## Notes (series) ##\n    +    v2:\n    +    • Unbreak t/t0450-txt-doc-vs-help.sh caused by source/doc synopsis being\n    +      out of synch\n    +\n      ## Documentation/git-config.adoc ##\n     @@ Documentation/git-config.adoc: SYNOPSIS\n      --------\n    @@ Documentation/git-config.adoc: SYNOPSIS\n      'git config set' [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\n      'git config unset' [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\n      'git config rename-section' [<file-option>] <old-name> <new-name>\n    +\n    + ## builtin/config.c ##\n    +@@\n    + \n    + static const char *const builtin_config_usage[] = {\n    + \tN_(\"git config list [<file-option>] [<display-option>] [--includes]\"),\n    +-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\"),\n    ++\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] [--url=<url>] <name>\"),\n    + \tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n    + \tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n    + \tN_(\"git config rename-section [<file-option>] <old-name> <new-name>\"),\n\nbase-commit: cf6f63ea6bf35173e02e18bdc6a4ba41288acff9\n-- \n2.50.0.136.g303b50f9132\n\n"},{"id":"521060","messageId":"3c90ec17459096bab7f1268c7b5e5e3e7f7bcccd.1751382830.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751382830.git.code@khaugsbakk.name","subject":"[PATCH v2 1/5] doc: config: document --[no-]show-names","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-07-01T15:14:28Z","receivedAt":"2025-07-01T15:14:58Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThese options were introduced in 4e513890008 (builtin/config:\nintroduce \"get\" subcommand, 2024-05-06) but not documented here.\nUse the description from the source code.\n\nDocument this option and the negated form according to the current\nconvention.[1]\n\n`--show-names` is also the default when `--get-regexp` is given.  But\ndon’t mention it here since all the deprecated modes are quarantined in\nthe “Deprecated Modes” section.\n\n[1]: https://lore.kernel.org/git/xmqqcyct1mtq.fsf@gitster.g/\n\nAcked-by: Patrick Steinhardt <ps@pks.im>\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n\nNotes (series):\n    >The default is `--no-show-names` unless `--url` is given and there are\n    > no subsections in _<name>_.\n    \n    See: d4770964d50 (config: \"git config --get-urlmatch\" parses\n    section.<url>.key, 2013-07-31)\n\n Documentation/git-config.adoc | 6 ++++++\n 1 file changed, 6 insertions(+)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex 936e0c5130f..e05bf813d46 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -259,6 +259,12 @@ Valid `<type>`'s include:\n \tOutput only the names of config variables for `list` or\n \t`get`.\n \n+`--show-names`::\n+`--no-show-names`::\n+\tWith `get`, show config keys in addition to their values. The\n+\tdefault is `--no-show-names` unless `--url` is given and there\n+\tare no subsections in _<name>_.\n+\n --show-origin::\n \tAugment the output of all queried config options with the\n \torigin type (file, standard input, blob, command line) and\n-- \n2.50.0.136.g303b50f9132\n\n"},{"id":"521061","messageId":"fa183e470c52aed223d284f17a222a02edaeaad2.1751382830.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751382830.git.code@khaugsbakk.name","subject":"[PATCH v2 2/5] config: use --value=<pattern> consistently","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-07-01T15:14:29Z","receivedAt":"2025-07-01T15:15:01Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThis option was introduced in a series of commits from fe3ccc7aab (Merge\nbranch 'ps/config-subcommands', 2024-05-15).  But two styles were used\nfor the value provided to the option:\n\n1. Synopsis: `--value=<value>`\n2. Deprecated Modes: `--value=<pattern>`\n\n(2) is also used in the synopsis on the command.\n\nUse (2) consistently throughout since it’s a pattern in the general\ncase (`value` sounds more generic).\n\nAcked-by: Patrick Steinhardt <ps@pks.im>\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n\nNotes (series):\n    v2:\n    • Unbreak t/t0450-txt-doc-vs-help.sh caused by source/doc synopsis being\n      out of synch\n    • Replaced the rest that I missed\n\n Documentation/git-config.adoc |  6 +++---\n builtin/config.c              | 12 ++++++------\n 2 files changed, 9 insertions(+), 9 deletions(-)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex e05bf813d46..d3ddc538555 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -10,9 +10,9 @@ SYNOPSIS\n --------\n [verse]\n 'git config list' [<file-option>] [<display-option>] [--includes]\n-'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<value>] [--fixed-value] [--default=<default>] <name>\n-'git config set' [<file-option>] [--type=<type>] [--all] [--value=<value>] [--fixed-value] <name> <value>\n-'git config unset' [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\n+'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\n+'git config set' [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\n+'git config unset' [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\n 'git config rename-section' [<file-option>] <old-name> <new-name>\n 'git config remove-section' [<file-option>] <name>\n 'git config edit' [<file-option>]\ndiff --git a/builtin/config.c b/builtin/config.c\nindex f70d6354772..706269647e5 100644\n--- a/builtin/config.c\n+++ b/builtin/config.c\n@@ -17,9 +17,9 @@\n \n static const char *const builtin_config_usage[] = {\n \tN_(\"git config list [<file-option>] [<display-option>] [--includes]\"),\n-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<value>] [--fixed-value] [--default=<default>] <name>\"),\n-\tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<value>] [--fixed-value] <name> <value>\"),\n-\tN_(\"git config unset [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\"),\n+\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\"),\n+\tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n+\tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n \tN_(\"git config rename-section [<file-option>] <old-name> <new-name>\"),\n \tN_(\"git config remove-section [<file-option>] <name>\"),\n \tN_(\"git config edit [<file-option>]\"),\n@@ -33,17 +33,17 @@ static const char *const builtin_config_list_usage[] = {\n };\n \n static const char *const builtin_config_get_usage[] = {\n-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp=<regexp>] [--value=<value>] [--fixed-value] [--default=<default>] <name>\"),\n+\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp=<regexp>] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\"),\n \tNULL\n };\n \n static const char *const builtin_config_set_usage[] = {\n-\tN_(\"git config set [<file-option>] [--type=<type>] [--comment=<message>] [--all] [--value=<value>] [--fixed-value] <name> <value>\"),\n+\tN_(\"git config set [<file-option>] [--type=<type>] [--comment=<message>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n \tNULL\n };\n \n static const char *const builtin_config_unset_usage[] = {\n-\tN_(\"git config unset [<file-option>] [--all] [--value=<value>] [--fixed-value] <name>\"),\n+\tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n \tNULL\n };\n \n-- \n2.50.0.136.g303b50f9132\n\n"},{"id":"521062","messageId":"c85b42e33310c87102b8543ab214564f7a2a9e64.1751382830.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751382830.git.code@khaugsbakk.name","subject":"[PATCH v2 3/5] doc: config: document --[no-]value","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-07-01T15:14:30Z","receivedAt":"2025-07-01T15:15:05Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThese options were introduced in a series of commits from\nfe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15).[1]\nBut they were not documented here.\n\nDocument this option and the negated form according to the current\nconvention.[2]\n\n[1]: `--value` is a replacement for the `value-pattern`\n    positional argument\n[2]: https://lore.kernel.org/git/xmqqcyct1mtq.fsf@gitster.g/\n\nAcked-by: Patrick Steinhardt <ps@pks.im>\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n Documentation/git-config.adoc | 8 ++++++++\n 1 file changed, 8 insertions(+)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex d3ddc538555..03808b18d3e 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -200,6 +200,14 @@ See also <<FILES>>.\n \tsection in linkgit:gitrevisions[7] for a more complete list of\n \tways to spell blob names.\n \n+`--value=<pattern>`::\n+`--no-value`::\n+\tWith `get`, `set`, and `unset`, match only against\n+\t_<pattern>_. The pattern is an extended regular expression unless\n+\t`--fixed-value` is given.\n++\n+Use `--no-value` to unset _<pattern>_.\n+\n --fixed-value::\n \tWhen used with the `value-pattern` argument, treat `value-pattern` as\n \tan exact string instead of a regular expression. This will restrict\n-- \n2.50.0.136.g303b50f9132\n\n"},{"id":"521063","messageId":"e5eee1a0541b2b540bdac92b6b81858bf1eaed93.1751382830.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751382830.git.code@khaugsbakk.name","subject":"[PATCH v2 4/5] doc: config: use --value instead of value-pattern","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-07-01T15:14:31Z","receivedAt":"2025-07-01T15:15:08Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\nThis option was introduced in a series of commits from fe3ccc7aab (Merge\nbranch 'ps/config-subcommands', 2024-05-15) and deprecated\n`value-pattern`.  But `value-pattern` is still used throughout the doc.\n\nThe deprecated modes have been quarantined in the “Deprecated Modes”\nsection.  So let’s only use `--value=<pattern>` in the rest of the doc.\n\nAcked-by: Patrick Steinhardt <ps@pks.im>\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n Documentation/git-config.adoc | 8 ++++----\n 1 file changed, 4 insertions(+), 4 deletions(-)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex 03808b18d3e..9d8f9bb04e5 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -26,7 +26,7 @@ escaped.\n \n Multiple lines can be added to an option by using the `--append` option.\n If you want to update or unset an option which can occur on multiple\n-lines, a `value-pattern` (which is an extended regular expression,\n+lines, `--value=<pattern>` (which is an extended regular expression,\n unless the `--fixed-value` option is given) needs to be given.  Only the\n existing values that match the pattern are updated or unset.  If\n you want to handle the lines that do *not* match the pattern, just\n@@ -109,7 +109,7 @@ OPTIONS\n \n --replace-all::\n \tDefault behavior is to replace at most one line. This replaces\n-\tall lines matching the key (and optionally the `value-pattern`).\n+\tall lines matching the key (and optionally `--value=<pattern>`).\n \n --append::\n \tAdds a new line to the option without altering any existing\n@@ -209,10 +209,10 @@ See also <<FILES>>.\n Use `--no-value` to unset _<pattern>_.\n \n --fixed-value::\n-\tWhen used with the `value-pattern` argument, treat `value-pattern` as\n+\tWhen used with `--value=<pattern>`, treat _<pattern>_ as\n \tan exact string instead of a regular expression. This will restrict\n \tthe name/value pairs that are matched to only those where the value\n-\tis exactly equal to the `value-pattern`.\n+\tis exactly equal to _<pattern>_.\n \n --type <type>::\n   'git config' will ensure that any input or output is valid under the given\n-- \n2.50.0.136.g303b50f9132\n\n"},{"id":"521064","messageId":"8300e0fc3491991bcc8e4a7bcdd1ac97313cba1a.1751382830.git.code@khaugsbakk.name","threadId":"63715","inReplyTo":"cover.1751382830.git.code@khaugsbakk.name","subject":"[PATCH v2 5/5] config: mention --url in the synopsis","fromName":"","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2025-07-01T15:14:32Z","receivedAt":"2025-07-01T15:15:12Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n\n4e513890008 (builtin/config: introduce \"get\" subcommand, 2024-05-06)\nintroduced `get` and `--url` but didn’t add `--url` to the synopsis.\n\nAcked-by: Patrick Steinhardt <ps@pks.im>\nSigned-off-by: Kristoffer Haugsbakk <code@khaugsbakk.name>\n---\n\nNotes (series):\n    v2:\n    • Unbreak t/t0450-txt-doc-vs-help.sh caused by source/doc synopsis being\n      out of synch\n\n Documentation/git-config.adoc | 2 +-\n builtin/config.c              | 2 +-\n 2 files changed, 2 insertions(+), 2 deletions(-)\n\ndiff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc\nindex 9d8f9bb04e5..511b2e26bfb 100644\n--- a/Documentation/git-config.adoc\n+++ b/Documentation/git-config.adoc\n@@ -10,7 +10,7 @@ SYNOPSIS\n --------\n [verse]\n 'git config list' [<file-option>] [<display-option>] [--includes]\n-'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\n+'git config get' [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] [--url=<url>] <name>\n 'git config set' [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\n 'git config unset' [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\n 'git config rename-section' [<file-option>] <old-name> <new-name>\ndiff --git a/builtin/config.c b/builtin/config.c\nindex 706269647e5..5efe2730106 100644\n--- a/builtin/config.c\n+++ b/builtin/config.c\n@@ -17,7 +17,7 @@\n \n static const char *const builtin_config_usage[] = {\n \tN_(\"git config list [<file-option>] [<display-option>] [--includes]\"),\n-\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] <name>\"),\n+\tN_(\"git config get [<file-option>] [<display-option>] [--includes] [--all] [--regexp] [--value=<pattern>] [--fixed-value] [--default=<default>] [--url=<url>] <name>\"),\n \tN_(\"git config set [<file-option>] [--type=<type>] [--all] [--value=<pattern>] [--fixed-value] <name> <value>\"),\n \tN_(\"git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] <name>\"),\n \tN_(\"git config rename-section [<file-option>] <old-name> <new-name>\"),\n-- \n2.50.0.136.g303b50f9132\n\n"},{"id":"521076","messageId":"xmqq1pqzlwzo.fsf@gitster.g","threadId":"63715","inReplyTo":"adeb38ed-fdd3-4261-9c5a-901813b102e2@app.fastmail.com","subject":"Re: [PATCH 0/5] doc: config: update for the ps/config-subcommands series","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-07-01T16:03:07Z","receivedAt":"2025-07-01T16:03:09Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Kristoffer Haugsbakk\" <kristofferhaugsbakk@fastmail.com> writes:\n\n> On Tue, Jul 1, 2025, at 12:01, Patrick Steinhardt wrote:\n>> Except for the issues mentioned by Eric and Junio the changes look\n>> sensible to me. Thanks for improving these docs!\n>\n> Thanks. I’ll add your Acks to the changes.\n\nThanks.\n"},{"id":"521090","messageId":"xmqq8ql7lsve.fsf@gitster.g","threadId":"63715","inReplyTo":"cover.1751382830.git.code@khaugsbakk.name","subject":"Re: [PATCH v2 0/5] doc: config: update for the ps/config-subcommands series","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-07-01T17:32:05Z","receivedAt":"2025-07-01T17:32:07Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"kristofferhaugsbakk@fastmail.com writes:\n\n> From: Kristoffer Haugsbakk <code@khaugsbakk.name>\n>\n> Update git-config(1) according to the ps/config-subcommands series\n> (fe3ccc7aab (Merge branch 'ps/config-subcommands', 2024-05-15)):\n>\n> 1. Document `--show-names`\n> 2. Document `--value`\n> 3. Mention `--value` throughout instead of the deprecated\n>    `value-pattern`\n> 4. Mention `--url` in the synopsis\n\nThe result of getting rid of \"value-pattern' looks really nice.\n\nThis round looked great; I haven't run tests yet, but I know this\ntime you already did ;-), so I won't until I finish today's (1st)\nintegration cycle.\n\nThanks.\n"}]}