git/list[1] front-page[2] threads[3] people[4] search[5] about
wed 2026-10-07 18:02 UTC

Re: Bash completion very slow in large repo

From
Matthew Hughes <matthewhughes934@gmail.com>
Date
Aug 15, 2026, 19:52 UTC
Message-ID
<aoDB9roVjgoTeG5l@desktop>
In-Reply-To
<CALnO6CAWA4szRqq_=1kAjB_y6WqA5zSyyMZzPmgnV7KGb+AS7Q@mail.gmail.com>
On Sat, Aug 15, 2026 at 10:17:19AM -0400, D. Ben Knoble wrote:
> Hi Matt, have you tried turning on "feature.manyFiles"? That enables a
> few things (like the fsmonitor) that might help in large repositories.

Ah, thanks for calling that out: I should've mentioned this is in a repo that's already configured via `git-scalar(1)`, so it sets that specific option off, but justifies:

> feature.manyFiles=false
> This disables the "many files" optimizations grouped under this feature config.
> The expectation is that all valuable optimizations are also set explicitly by
> Scalar config, and any differences are intentional.

Though also testing in a fresh repo with no scalar but that option on I didn't see any significant performance change.

I'm also not sure e.g. `git ls-files --exclude-standard --others --directory` knows about things like `fsmonitor`/the untracked cache, like e.g. `git status` does (disclaimer: I'm not at all familiar enough with the code to justify that claim, it's based purely on my qualitative experience, I'm also not sure if it _could_ benefit from such things)

Cheers, Matt

Previous: D. Ben KnobleNext: Matthew Hughes
Message 3 of 4 in “Bash completion very slow in large repo”
  1. Matthew HughesAug 14, 2026
  2. D. Ben KnobleAug 15, 2026
  3. Matthew HughesAug 15, 2026
  4. Matthew HughesAug 19, 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.