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

Re: Could Git be smarter about object reuse?

From
SSainan <sainan@calamity.inc>
Date
Sep 22, 2025, 10:49 UTC
Message-ID
<2RWL_muy24EPDZ9wWFx-WZfu4Br_F2LenvcVJbKewfSVYipYM3qmeEIgV-6o4EbL39ZjMXtLHbVFOCPcBdHHVAU-0BrgBtuQ9BdRjS_2niE=@calamity.inc>
In-Reply-To
<f478fc6f-77ab-4d4e-a8d9-2d44622ba8dd@hogyros.de>
> The receiver sends a list of commits it has
This alone is not enough because if I'm amending a commit, it doesn't have the new commit(s), but it does have the previous commit(s), so the fact of blobs/trees being reusable is missed.
> For this to work, the sender needs to be able to follow the commits from these references
I think the issue here is more fundamental than this, because even just taking commits from one branch to the other is causing all objects to be resent even if again only the commit objects are new, not any attached trees or blobs.
Of course, it gets even more complicated when there's forks involved which are usually stored in the same repo by the server, but the client might not be entirely aware that different remotes are related. But that's a different issue that I could work around if that were all that were missing.
-- Sainan
Previous: Simon RichterNext: Jeff King
Message 3 of 8 in “Could Git be smarter about object reuse?”
  1. SainanSep 22, 2025
  2. Simon RichterSep 22, 2025
  3. SainanSep 22, 2025
  4. Jeff KingSep 22, 2025
  5. SainanSep 22, 2025
  6. Jeff KingSep 23, 2025
  7. SainanOct 3, 2025
  8. SainanOct 3, 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.