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

Re: [QUESTION] how to find options set by scalar?

From
Matthew Hughes <matthewhughes934@gmail.com>
Date
Oct 19, 2025, 17:43 UTC
Message-ID
<wn3jjekjibcxbuiieji5umijvx5gaesg7wpwnivc5ng66sqpa7@cybj6wtz2eq5>
In-Reply-To
<ffa61066-7004-48dd-9096-85b305373bc7@gmail.com>
On Mon, Sep 22, 2025 at 09:36:00AM -0400, Derrick Stolee wrote:
> Makes sense. I'll pick up your patch into my series as I prepare it.

I'm not sure if you had a chance to start working on this (I didn't see any other activity around this on the mailing list, but shout-out if I missed something!). But I got curious and started looking into some of the options and had some questions (I haven't do much archaeology on the original Scalar repo[1], so if I should just go dig around there for more answers let me know).

Firstly, there are a couple of options specific to things outside this repo:
* core.FSCache: specific for git-for-windows[2]
* credential.validate: specific to Git-Credential-Manager-for-Windows[3]

Could these possibly be removed from here (I understand scalar started as an external project, so these are perhaps a relic of that)?

Secondly, I was curious around some of the CRLF options, in particular, setting:
* am.keepCR=true
* core.autoCRLF=false
* core.safeCRLF=false

Is there a non-trival cost to doing conversions over a large enough number of files?

GC bits: I there is some GC automation disabled:
* gc.auto=0
* gui.GCWwarning=false
* receive.autoGC=false

What's the reason for this? Is garbage collection expected to be unreasonably slow in a large repo? Is it worth the GC still being run at least occasionally in a large repo?

Index bits: scalar will set index.threads=true, index.version=4: I assume these are expected to just speed up most read operations on in the index in general? It also disable index.skipHash: the docs tells me this speeds up commands that manipulate the index, but I was wondering if having this trailing hash can make future _reads_ more efficient?

And more generally, I'm not sure I understand the reasons for the following settings in the context of a large repo:

* pack.useBitmaps=false
* fetch.writeCommitGraph=false
* status.aheadBehind=false
* merge.stat=false
* commitGraph.generationVersion=false 
* fetch.showForcedUpdates=false
Link: https://github.com/microsoft/scalar [1]
Link: https://github.com/git-for-windows [2]
Link: https://github.com/microsoft/Git-Credential-Manager-for-Windows [3]

Thanks, Matt

Previous: Derrick Stolee
Message 8 of 8 in “[QUESTION] how to find options set by scalar?”
  1. Matthew HughesSep 16, 2025
  2. Patrick SteinhardtSep 16, 2025
  3. Matthew HughesSep 18, 2025
  4. Junio C HamanoSep 18, 2025
  5. Derrick StoleeSep 19, 2025
  6. Patrick SteinhardtSep 22, 2025
  7. Derrick StoleeSep 22, 2025
  8. Matthew HughesOct 19, 2025

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.