On Tue, Feb 22 2022, Johannes Schindelin wrote: > Hi Elijah, > > On Mon, 21 Feb 2022, Elijah Newren wrote: > >> On Mon, Feb 21, 2022 at 2:57 PM Ævar Arnfjörð Bjarmason >> <avarab@xxxxxxxxx> wrote: >> >> > There's also no law that says we can't have a three-level variable as >> > core.sparse.*, perhaps that would be the start of a good trend, and it >> > would sort adjacent to core.sparse[A-Z].* ... >> >> Interesting thought. I'm curious what others think of this. > > What would make it `core`? > > In other words, while it is valuable to consider this option, I don't > think that it solves anything, for the price of additional complexity. To a first approximation what makes it core.* is that we have a core.sparseCheckout. It's hard come up with some definition of config namespacing where it belongs there, but not a setting that tweaks it further, no? I.e. we could quibble with the benefit of hindsight whether core.sshCommand was the best idea at the time, or if it should be remote.sshCommand or whatever. But if we introduced a more specific sshCommandSomething having it there instead of ... well, damn, I forgot that we have ssh.variant :) Anyway, as noted (and I feel I have to comment as the originator of this thread) I think the bikeshedding about namespacing is less important than making sure from a user perspective that these are discoverable. E.g. core.sshCommand doesn't reference ssh.variant or the other way around, and in my "man git-config" they're at ~25% and ~90% in to what's now a *huge* document. You need to read the whole thing or have the foresight to search through it to discover both. So for core.sshCommand and ssh.variant, and core.sparse* and sparse.* cross-linking etc. would go a long way... Aside: I do have some local patches (waiting on a couple of other things I have outstanding) to add a "CONFIGURATION" section to all of the built-in commands with some including/splitting up of Documentation/config**.txt, so "man git-sparse-checkout" would have a section listing the subset of "git-config" applicable to the command.