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

Re: [PATCH/RFC] gitperformance: add new documentation about git performance tuning

From
EWEric Wong <e@80x24.org>
Date
Apr 3, 2017, 21:34 UTC
Message-ID
<20170403213440.GA1409@whir>
In-Reply-To
<20170403211644.26814-1-avarab@gmail.com>
Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote:
Show 15 quoted lines
> Add a new manpage that gives an overview of how to tweak git's
> performance.
> 
> There's currently no good single resource for things a git site
> administrator might want to look into to improve performance for his
> site & his users. This unfinished documentation aims to be the first
> thing someone might want to look at when investigating ways to improve
> git performance.
> 
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---
> 
> I've been wanting to get something like this started for a while. It's
> obviously woefully incomplete. Pointers about what to include would be
> great & whether including something like this makes sense.

Thanks for doing this. I hope something like this can give server operators more confidence to host their own git servers.

> Things I have on my TODO list:
<snip>
>  - Should we be covering good practices for your repo going forward to
>    maintain good performance? E.g. don't have some huge tree all in
>    one directory (use subdirs), don't add binary (rather
>    un-delta-able) content if you can help it etc.
Yes, I think so.

I think avoiding ever growing ChangeLog-type files should also be added to things to avoid.

> --- /dev/null
> +++ b/Documentation/gitperformance.txt
> @@ -0,0 +1,107 @@
> +giteveryday(7)
gitperformance(7)
Show 5 quoted lines
> +Server options to help clients
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +These features can be enabled on git servers, they won't help the
> +performance of the servers themselves,

Is that true for bitmaps? I thought they reduced CPU usage on the server side...

A sidenote: I wonder if bitmaps should be the default for bare repos, since bare repos are likely used on servers.

Show 6 quoted lines
> but will help clients that need
> +to talk to those servers.
> +
> +- config: "repack.writeBitmaps=true" (see
> +  linkgit:git-config[1]). Spend more time during repack to produce
> +  bitmap index, helps clients with "fetch" & "clone" performance.
Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 2 of 10 in “gitperformance: add new documentation about git performance tuning”
  1. gitperformance: add new documentation about git performance tuningÆvar Arnfjörð Bjarmason, Apr 3, 2017
  2. Eric WongApr 3, 2017
  3. Ævar Arnfjörð BjarmasonApr 3, 2017
  4. Eric WongApr 3, 2017
  5. Ævar Arnfjörð BjarmasonApr 4, 2017
  6. Jeff KingApr 4, 2017
  7. Jeff HostetlerApr 4, 2017
  8. Ævar Arnfjörð BjarmasonApr 4, 2017
  9. Jeff HostetlerApr 4, 2017
  10. Duy NguyenApr 5, 2017

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.