From: Jonathan Tan <jonathantanmy@google.com> To: Jeff Hostetler <git@jeffhostetler.com> Cc: Junio C Hamano <gitster@pobox.com>, Christian Couder <christian.couder@gmail.com>, git <git@vger.kernel.org>, Ben Peart <peartben@gmail.com> Subject: Re: [PATCH 00/18] Partial clone (from clone to lazy fetch in 18 patches) Date: Tue, 3 Oct 2017 16:42:00 -0700 [thread overview] Message-ID: <CAGf8dgLu-TeK8KbHv-U+18O+L2TxKcGv5vFFHy38J6a_YXRfew@mail.gmail.com> (raw) In-Reply-To: <cb818dcf-beab-10ac-5e58-f56377af4f6a@jeffhostetler.com> On Tue, Oct 3, 2017 at 7:39 AM, Jeff Hostetler <git@jeffhostetler.com> wrote: > > As I see it there are the following major parts to partial clone: > 1. How to let git-clone (and later git-fetch) specify the desired > subset of objects that it wants? (A ref-relative request.) > 2. How to let the server and git-pack-objects build that incomplete > packfile? > 3. How to remember in the local config that a partial clone (or > fetch) was used and that missing object should be expected? > 4. How to dynamically fetch individual missing objects individually? > (Not a ref-relative request.) > 5. How to augment the local ODB with partial clone information and > let git-fsck (and friends) perform limited consistency checking? > 6. Methods to bulk fetching missing objects (whether in a pre-verb > hook or in unpack-tree) > 7. Miscellaneous issues (e.g. fixing places that accidentally cause > a missing object to be fetched that don't really need it). Thanks for the enumeration. > As was suggested above, I think we should merge our efforts: > using my filtering for 1 and 2 and Jonathan's code for 3, 4, and 5. > I would need to eliminate the "relax" options in favor of his > is_promised() functionality for index-pack and similar. And omit > his blob-max-bytes changes from pack-objects, the protocol and > related commands. > > That should be a good first step. This sounds good to me. Jeff Hostetler's filtering (all blobs, blobs by size, blobs by sparse checkout specification) is more comprehensive than mine, so removing blob-max-bytes from my code is not a problem. > We both have thoughts on bulk fetching (mine in pre-verb hooks and > his in unpack-tree). We don't need this immediately, but can wait > until the above is working to revisit. Agreed.
next prev parent reply other threads:[~2017-10-03 23:42 UTC|newest] Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-09-29 20:11 Jonathan Tan 2017-09-29 20:11 ` [PATCH 01/18] fsck: introduce partialclone extension Jonathan Tan 2017-09-29 20:11 ` [PATCH 02/18] fsck: support refs pointing to promisor objects Jonathan Tan 2017-09-29 20:11 ` [PATCH 03/18] fsck: support referenced " Jonathan Tan 2017-09-29 20:11 ` [PATCH 04/18] fsck: support promisor objects as CLI argument Jonathan Tan 2017-09-29 20:11 ` [PATCH 05/18] index-pack: refactor writing of .keep files Jonathan Tan 2017-09-29 20:11 ` [PATCH 06/18] introduce fetch-object: fetch one promisor object Jonathan Tan 2017-09-29 20:11 ` [PATCH 07/18] sha1_file: support lazily fetching missing objects Jonathan Tan 2017-10-12 14:42 ` Christian Couder 2017-10-12 15:45 ` Christian Couder 2017-09-29 20:11 ` [PATCH 08/18] rev-list: support termination at promisor objects Jonathan Tan 2017-09-29 20:11 ` [PATCH 09/18] gc: do not repack promisor packfiles Jonathan Tan 2017-09-29 20:11 ` [PATCH 10/18] pack-objects: rename want_.* to ignore_.* Jonathan Tan 2017-09-29 20:11 ` [PATCH 11/18] pack-objects: support --blob-max-bytes Jonathan Tan 2017-09-29 20:11 ` [PATCH 12/18] fetch-pack: support excluding large blobs Jonathan Tan 2017-09-29 20:11 ` [PATCH 13/18] fetch: refactor calculation of remote list Jonathan Tan 2017-09-29 20:11 ` [PATCH 14/18] fetch: support excluding large blobs Jonathan Tan 2017-09-29 20:11 ` [PATCH 15/18] clone: " Jonathan Tan 2017-09-29 20:11 ` [PATCH 16/18] clone: configure blobmaxbytes in created repos Jonathan Tan 2017-09-29 20:11 ` [PATCH 17/18] unpack-trees: batch fetching of missing blobs Jonathan Tan 2017-09-29 20:11 ` [PATCH 18/18] fetch-pack: restore save_commit_buffer after use Jonathan Tan 2017-09-29 21:08 ` [PATCH 00/18] Partial clone (from clone to lazy fetch in 18 patches) Johannes Schindelin 2017-10-02 4:23 ` Junio C Hamano 2017-10-03 6:15 ` Christian Couder 2017-10-03 8:50 ` Junio C Hamano 2017-10-03 14:39 ` Jeff Hostetler 2017-10-03 23:42 ` Jonathan Tan [this message] 2017-10-04 13:30 ` Jeff Hostetler
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style List information: http://vger.kernel.org/majordomo-info.html * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CAGf8dgLu-TeK8KbHv-U+18O+L2TxKcGv5vFFHy38J6a_YXRfew@mail.gmail.com \ --to=jonathantanmy@google.com \ --cc=christian.couder@gmail.com \ --cc=git@jeffhostetler.com \ --cc=git@vger.kernel.org \ --cc=gitster@pobox.com \ --cc=peartben@gmail.com \ --subject='Re: [PATCH 00/18] Partial clone (from clone to lazy fetch in 18 patches)' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Code repositories for project(s) associated with this inbox: https://80x24.org/mirrors/git.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).