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

Re: [RFC] shallow clone

From
Junio C Hamano <junkio@cox.net>
Date
Jan 31, 2006, 20:59 UTC
Message-ID
<7vr76oun9o.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<7v8xsxa70o.fsf@assigned-by-dhcp.cox.net>

This is whacky, but another completely different strategy is to introduce remote alternates.

If you can allow objects/info/alternates to name a repository that is not on the local disk, we can set the original remote repository we "clone" from as one of the alternates, and teach read_sha1_file() to locally cache objects we read from remote alternates.

After such a "shallow clone", the user may want to prime the cache by something like:

	$ git-rev-list --objects v2.6.14..master |
          git-pack-objects --stdout >/dev/null

before going offline. Obviously you can keep the resulting pack instead of leaving things loose.

I am not seriously advocating this yet -- adding calls to http and git transfer machinery in read_sha1_file(), which is as low level as you can go, is not something I have guts to do at the moment.

Previous: Johannes SchindelinNext: Johannes Schindelin
Message 28 of 30 in “[RFC] shallow clone”
  1. Junio C HamanoJan 30, 2006
  2. Johannes SchindelinJan 30, 2006
  3. Simon RichterJan 30, 2006
  4. Johannes SchindelinJan 30, 2006
  5. Simon RichterJan 30, 2006
  6. Junio C HamanoJan 30, 2006
  7. Johannes SchindelinJan 31, 2006
  8. Simon RichterJan 31, 2006
  9. Johannes SchindelinJan 31, 2006
  10. Simon RichterJan 31, 2006
  11. Junio C HamanoJan 30, 2006
  12. FranckJan 31, 2006
  13. Junio C HamanoJan 31, 2006
  14. FranckJan 31, 2006
  15. Junio C HamanoJan 30, 2006
  16. Shallow clone: low level machinery.Junio C Hamano, Jan 31, 2006
  17. Johannes SchindelinJan 31, 2006
  18. Junio C HamanoJan 31, 2006
  19. Johannes SchindelinJan 31, 2006
  20. Junio C HamanoJan 31, 2006
  21. Johannes SchindelinFeb 1, 2006
  22. Junio C HamanoFeb 1, 2006
  23. Johannes SchindelinFeb 2, 2006
  24. Junio C HamanoFeb 2, 2006
  25. Johannes SchindelinFeb 2, 2006
  26. Junio C HamanoFeb 2, 2006
  27. Johannes SchindelinJan 31, 2006
  28. Junio C HamanoJan 31, 2006
  29. Johannes SchindelinFeb 1, 2006
  30. FranckJan 31, 2006

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.