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

Re: how exactly can git config section names contain periods?

From
Robert P. J. Day <rpjday@crashcourse.ca>
Date
Jun 3, 2018, 09:53 UTC
Message-ID
<alpine.LFD.2.21.1806030547070.5332@localhost.localdomain>
In-Reply-To
<20180601210731.GA20974@sigill.intra.peff.net>
On Fri, 1 Jun 2018, Jeff King wrote:
> On Fri, Jun 01, 2018 at 04:14:12PM -0400, Robert P. J. Day wrote:
... snip ...
Show 26 quoted lines
> >   ok, so how on earth would i use "git config" at the command line
> > to set a config variable with some arbitrary level of subsections?
> > let's try this:
>
> You don't. There are only three levels: section, (optional)
> subsection, and key. If there is a subsection, it consists of
> _everything_ between the two outer periods.
>
> >   $ git config --global a.b.c.d.e rday
> >
> > huh ... seemed to work fine, and added this to my ~/.gitconfig:
> >
> >   [a "b.c.d"]
> >           e = rday
> >
> > as i see it, the first component is intgerpreted as the section name,
> > the last component is the variable/key(?) name, and everything in
> > between is treated as subsection(s), which is not at all obvious from
> > that Doc file, or from "man git-config".
>
> Yep, your understanding is correct.
>
> >   and if a section name can contain periods, how would you specify
> > that at the command line?
>
> You can't, because section names cannot contain periods. ;)
  if (for some weird reason) i wanted to define a multi-level
subsection, is there any benefit to using periods as i did above, as
opposed to any other delimiting character? apparently, running this:
  $ git config --global a.b_c_d.e rday
dumps this into my ~/.gitconfig:
  [a "b_c_d"]
	e = rday

if i wanted to do something this admittedly awkward, would using periods give me some benefit related to, i don't know, regex matching, as compared to using a different character? or am i just way overthinking this? is anyone out there actually taking advantage of multi-level subsections?

rday
-- 
========================================================================
Robert P. J. Day                                 Ottawa, Ontario, CANADA
                  http://crashcourse.ca/dokuwiki

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday
========================================================================
Previous: Jeff KingNext: SZEDER Gábor
Message 9 of 13 in “how exactly can git config section names contain periods?”
  1. Robert P. J. DayJun 1, 2018
  2. Randall S. BeckerJun 1, 2018
  3. Jeff KingJun 1, 2018
  4. Robert P. J. DayJun 1, 2018
  5. Junio C HamanoJun 1, 2018
  6. Jeff KingJun 2, 2018
  7. Robert P. J. DayJun 2, 2018
  8. Jeff KingJun 2, 2018
  9. Robert P. J. DayJun 3, 2018
  10. SZEDER GáborJun 3, 2018
  11. Robert P. J. DayJun 3, 2018
  12. Jeff KingJun 4, 2018
  13. Johannes SixtJun 3, 2018

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.