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

Re: Reducing git size by building libgit.so

From
SZEDER Gábor <szeder.dev@gmail.com>
Date
Jun 12, 2019, 10:25 UTC
Message-ID
<20190612102537.GI4012@szeder.dev>
In-Reply-To
<87y32787k9.fsf@evledraar.gmail.com>
On Wed, Jun 12, 2019 at 11:41:10AM +0200, Ævar Arnfjörð Bjarmason wrote:
> On Tue, Jun 11 2019, Elmar Pruesse wrote:
> > The total compiled size of libexec/git-core is currently somewhere
> > around 30 MB. This is largely due to a number of binaries linking
> > statically against libgit.a. For some folks, every byte counts.

I wonder whether those folks actually need such non-builtin git binaries like 'git-shell' or 'git-daemon' in the first place.

Show 7 quoted lines
> We still have some stand-alone binaries, but IIRC there's under 5 of
> those with INSTALL_SYMLINKS. We could probably also just make those
> built-ins to get the rest of the size benefits.
> 
> I.e. we'd just have one git binary, everything else symlinking to that,
> and we'd route to the right program by inspecting argv, which we mostly
> do already.

Let's not forget that commands like 'git-daemon' and 'git-shell' are better left as stand-alone programs.

Previous: Duy Nguyen
Message 12 of 12 in “Reducing git size by building libgit.so”
  1. Elmar PruesseJun 11, 2019
  2. brian m. carlsonJun 11, 2019
  3. Duy NguyenJun 12, 2019
  4. Paul SmithJun 12, 2019
  5. Johannes SchindelinJun 13, 2019
  6. Paul SmithJun 13, 2019
  7. Junio C HamanoJun 13, 2019
  8. brian m. carlsonJun 12, 2019
  9. Johannes SixtJun 13, 2019
  10. Ævar Arnfjörð BjarmasonJun 12, 2019
  11. Duy NguyenJun 12, 2019
  12. SZEDER GáborJun 12, 2019

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.