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

[PATCH v3 1/3] doc: config: terminate runaway lists

From
Tuomas Ahola <taahol@utu.fi>
Date
Jun 11, 2026, 16:19 UTC
Message-ID
<20260611161946.12166-2-taahol@utu.fi>
In-Reply-To
<20260611161946.12166-1-taahol@utu.fi>

There are many places in git-config(1) where paragraphs that should logically come after a list are instead appended to the last item of the list. This is a well-documented quirk of AsciiDoc, and can be mitigated by enclosing the list in an open block:

	--
	* first item
	* last item
	--
	+
	New paragraph after the list.
Fix the issue accordingly.
Signed-off-by: Tuomas Ahola <taahol@utu.fi>
---
Notes (doc-diff):
    diff --git a/29bd7ed5127255713c1ac2f43b7c6f257d7b4594/home/taahol/share/man/man1/git-config.1 b/c9131b23fd1c8611fde5664fcfd4e6d5283648ad/home/taahol/share/man/man1/git-config.1
    index 326782e637..d915897ca5 100644
    --- a/29bd7ed5127255713c1ac2f43b7c6f257d7b4594/home/taahol/share/man/man1/git-config.1
    +++ b/c9131b23fd1c8611fde5664fcfd4e6d5283648ad/home/taahol/share/man/man1/git-config.1
    @@ -234,10 +234,10 @@ OPTIONS
                    sanity-check is performed to ensure that the given value is
                    canonicalize-able as an ANSI color, but it is written as-is.
    
    -               If the command is in list mode, then the --type <type> argument
    -               will apply to each listed config value. If the value does not
    -               successfully parse in that format, then it will be omitted from
    -               the list.
    +           If the command is in list mode, then the --type <type> argument
    +           will apply to each listed config value. If the value does not
    +           successfully parse in that format, then it will be omitted from the
    +           list.
    
            --bool, --int, --bool-or-int, --path, --expiry-date
                Historical options for selecting a type specifier. Prefer instead
    @@ -841,9 +841,9 @@ CONFIGURATION FILE
                    Boolean false literals are no, off, false, 0 and the empty
                    string.
    
    -               When converting a value to its canonical form using the
    -               --type=bool type specifier, git config will ensure that the
    -               output is "true" or "false" (spelled in lowercase).
    +           When converting a value to its canonical form using the --type=bool
    +           type specifier, git config will ensure that the output is "true" or
    +           "false" (spelled in lowercase).
    
            integer
                The value for many variables that specify various sizes can be
    @@ -5869,28 +5869,26 @@ CONFIGURATION FILE
                    exactly match the value advertised by the server for the
                    "token" field.
    
    -               If any of these conditions is not met for any field name listed
    -               in promisor.checkFields, the advertised remote "foo" is
    -               rejected.
    +           If any of these conditions is not met for any field name listed in
    +           promisor.checkFields, the advertised remote "foo" is rejected.
    
    -               For the "partialCloneFilter" field, this allows the client to
    -               ensure that the server’s filter matches what it expects
    -               locally, preventing inconsistencies in filtering behavior. For
    -               the "token" field, this can be used to verify that
    -               authentication credentials match expected values.
    +           For the "partialCloneFilter" field, this allows the client to
    +           ensure that the server’s filter matches what it expects locally,
    +           preventing inconsistencies in filtering behavior. For the "token"
    +           field, this can be used to verify that authentication credentials
    +           match expected values.
    
    -               Field values are compared case-sensitively.
    +           Field values are compared case-sensitively.
    
    -               The "name" and "url" fields are always checked according to the
    -               promisor.acceptFromServer policy, independently of this
    -               setting.
    +           The "name" and "url" fields are always checked according to the
    +           promisor.acceptFromServer policy, independently of this setting.
    
    -               The field names and values should be passed by the server
    -               through the "promisor-remote" capability by using the
    -               promisor.sendFields config variable. The fields are checked
    -               only if the promisor.acceptFromServer config variable is not
    -               set to "None". If set to "None", this config variable has no
    -               effect. See gitprotocol-v2(5).
    +           The field names and values should be passed by the server through
    +           the "promisor-remote" capability by using the promisor.sendFields
    +           config variable. The fields are checked only if the
    +           promisor.acceptFromServer config variable is not set to "None". If
    +           set to "None", this config variable has no effect. See gitprotocol-
    +           v2(5).
    
            promisor.storeFields
                A comma or space separated list of additional remote related field
    @@ -6630,15 +6628,15 @@ CONFIGURATION FILE
                    the top-level --git-dir command-line option, or the GIT_DIR
                    environment variable (see git(1)).
    
    -               If you do not use bare repositories in your workflow, then it
    -               may be beneficial to set safe.bareRepository to explicit in
    -               your global config. This will protect you from attacks that
    -               involve cloning a repository that contains a bare repository
    -               and running a Git command within that directory.
    +           If you do not use bare repositories in your workflow, then it may
    +           be beneficial to set safe.bareRepository to explicit in your global
    +           config. This will protect you from attacks that involve cloning a
    +           repository that contains a bare repository and running a Git
    +           command within that directory.
    
    -               This config setting is only respected in protected
    -               configuration (see the section called “SCOPES”). This prevents
    -               untrusted repositories from tampering with this value.
    +           This config setting is only respected in protected configuration
    +           (see the section called “SCOPES”). This prevents untrusted
    +           repositories from tampering with this value.
    
            safe.directory
                These config entries specify Git-tracked directories that are
 Documentation/config.adoc          | 4 +++-
 Documentation/config/promisor.adoc | 2 ++
 Documentation/config/safe.adoc     | 2 ++
 Documentation/git-config.adoc      | 2 ++
 4 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/Documentation/config.adoc b/Documentation/config.adoc
index dcea3c0c15..fc48c1c461 100644
--- a/Documentation/config.adoc
+++ b/Documentation/config.adoc
@@ -276,13 +276,15 @@ boolean::
        When a variable is said to take a boolean value, many
        synonyms are accepted for 'true' and 'false'; these are all
        case-insensitive.
-
++
+--
 	true;; Boolean true literals are `yes`, `on`, `true`,
 		and `1`.  Also, a variable defined without `= <value>`
 		is taken as true.
 
 	false;; Boolean false literals are `no`, `off`, `false`,
 		`0` and the empty string.
+--
 +
 When converting a value to its canonical form using the `--type=bool` type
 specifier, 'git config' will ensure that the output is "true" or
diff --git a/Documentation/config/promisor.adoc b/Documentation/config/promisor.adoc
index b0fa43b839..39af63dcb8 100644
--- a/Documentation/config/promisor.adoc
+++ b/Documentation/config/promisor.adoc
@@ -63,11 +63,13 @@ If one of these field names (e.g., "token") is being checked for an
 advertised promisor remote (e.g., "foo"), three conditions must be met
 for the check of this specific field to pass:
 +
+--
 1. The corresponding local configuration (e.g., `remote.foo.token`)
    must be set.
 2. The server must advertise the "token" field for remote "foo".
 3. The value of the locally configured `remote.foo.token` must exactly
    match the value advertised by the server for the "token" field.
+--
 +
 If any of these conditions is not met for any field name listed in
 `promisor.checkFields`, the advertised remote "foo" is rejected.
diff --git a/Documentation/config/safe.adoc b/Documentation/config/safe.adoc
index 2d45c98b12..5ae4476b24 100644
--- a/Documentation/config/safe.adoc
+++ b/Documentation/config/safe.adoc
@@ -2,10 +2,12 @@ safe.bareRepository::
 	Specifies which bare repositories Git will work with. The currently
 	supported values are:
 +
+--
 * `all`: Git works with all bare repositories. This is the default.
 * `explicit`: Git only works with bare repositories specified via
   the top-level `--git-dir` command-line option, or the `GIT_DIR`
   environment variable (see linkgit:git[1]).
+--
 +
 If you do not use bare repositories in your workflow, then it may be
 beneficial to set `safe.bareRepository` to `explicit` in your global
diff --git a/Documentation/git-config.adoc b/Documentation/git-config.adoc
index 00545b2054..8439ce97df 100644
--- a/Documentation/git-config.adoc
+++ b/Documentation/git-config.adoc
@@ -221,6 +221,7 @@ Use `--no-value` to unset _<pattern>_.
 +
 Valid `<type>`'s include:
 +
+--
 - 'bool': canonicalize values `true`, `yes`, `on`, and positive
   numbers as "true", and values `false`, `no`, `off` and `0` as
   "false".
@@ -239,6 +240,7 @@ Valid `<type>`'s include:
   escape sequence. When setting a value, a sanity-check is performed to ensure
   that the given value is canonicalize-able as an ANSI color, but it is written
   as-is.
+--
 +
 If the command is in `list` mode, then the `--type <type>` argument will apply
 to each listed config value. If the value does not successfully parse in that
-- 
2.30.2
Previous: Tuomas AholaNext: Tuomas Ahola
Message 25 of 30 in “doc: config: fix AsciiDoc glitches”
  1. 0/3 doc: config: fix AsciiDoc glitchesTuomas Ahola, Jun 10, 2026
  2. 2/3 doc: config/sideband: fix typo in adoc markupTuomas Ahola, Jun 10, 2026
  3. Kristoffer HaugsbakkJun 10, 2026
  4. 3/3 doc: git-config: escape erroneous adoc markupTuomas Ahola, Jun 10, 2026
  5. Junio C HamanoJun 10, 2026
  6. Junio C HamanoJun 10, 2026
  7. 1/3 doc: config: terminate runaway listsTuomas Ahola, Jun 10, 2026
  8. 0/3 doc: config: fix AsciiDoc glitchesTuomas Ahola, Jun 10, 2026
  9. 1/3 doc: config: terminate runaway listsTuomas Ahola, Jun 10, 2026
  10. Jeff KingJun 11, 2026
  11. 2/3 doc: config/sideband: fix description list delimiterTuomas Ahola, Jun 10, 2026
  12. 3/3 doc: git-config: escape erroneous highlight markupTuomas Ahola, Jun 10, 2026
  13. Jeff KingJun 11, 2026
  14. Jeff KingJun 11, 2026
  15. Jeff KingJun 11, 2026
  16. Jean-Noël AVILAJun 11, 2026
  17. Jeff KingJun 12, 2026
  18. Jeff KingJun 12, 2026
  19. Tuomas AholaJun 11, 2026
  20. Jeff KingJun 11, 2026
  21. Tuomas AholaJun 11, 2026
  22. Junio C HamanoJun 11, 2026
  23. 0/3 doc: config: fix AsciiDoc glitchesTuomas Ahola, Jun 11, 2026
  24. 3/3 doc: git-config: escape erroneous highlight markupTuomas Ahola, Jun 11, 2026
  25. 1/3 doc: config: terminate runaway listsTuomas Ahola, Jun 11, 2026
  26. 2/3 doc: config/sideband: fix description list delimiterTuomas Ahola, Jun 11, 2026
  27. Jeff KingJun 12, 2026
  28. Junio C HamanoJun 12, 2026
  29. Junio C HamanoJun 12, 2026
  30. Junio C HamanoJun 12, 2026

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.