From: Jeff Hostetler <git@jeffhostetler.com>
To: git@vger.kernel.org
Cc: gitster@pobox.com, peff@peff.net, jonathantanmy@google.com,
christian.couder@gmail.com,
Jeff Hostetler <jeffhost@microsoft.com>
Subject: [PATCH v6 00/12] Partial clone part 2: fsck and promisors
Date: Tue, 5 Dec 2017 16:58:42 +0000 [thread overview]
Message-ID: <20171205165854.64979-1-git@jeffhostetler.com> (raw)
From: Jeff Hostetler <jeffhost@microsoft.com>
This is V6 of part 2 of partial clone. This assumes V6 of part 1
is already present. This version fixes a problem in fetch-pack
observed in V5. It also contains 2 "fixup" commits that are
WIP responses to comments on V5.
Part 2 is concerned with fsck, gc, initial support for dynamic
object fetching, and tracking promisor objects. Jonathan Tan
originally developed this code. I have moved it on top of
part 1 and updated it slightly.
Jeff Hostetler (2):
fixup: sha1_file: convert gotos to break/continue
fixup: sha1_file: add TODO
Jonathan Tan (10):
extension.partialclone: introduce partial clone extension
fsck: introduce partialclone extension
fsck: support refs pointing to promisor objects
fsck: support referenced promisor objects
fsck: support promisor objects as CLI argument
index-pack: refactor writing of .keep files
introduce fetch-object: fetch one promisor object
sha1_file: support lazily fetching missing objects
rev-list: support termination at promisor objects
gc: do not repack promisor packfiles
Documentation/git-pack-objects.txt | 11 +
Documentation/gitremote-helpers.txt | 7 +
Documentation/rev-list-options.txt | 11 +
Documentation/technical/repository-version.txt | 12 +
Makefile | 1 +
builtin/cat-file.c | 2 +
builtin/fetch-pack.c | 10 +
builtin/fsck.c | 26 +-
builtin/gc.c | 3 +
builtin/index-pack.c | 113 ++++----
builtin/pack-objects.c | 37 ++-
builtin/prune.c | 7 +
builtin/repack.c | 8 +-
builtin/rev-list.c | 71 ++++-
cache.h | 13 +-
environment.c | 1 +
fetch-object.c | 27 ++
fetch-object.h | 6 +
fetch-pack.c | 48 ++--
fetch-pack.h | 8 +
list-objects.c | 29 ++-
object.c | 2 +-
packfile.c | 77 +++++-
packfile.h | 13 +
remote-curl.c | 14 +-
revision.c | 33 ++-
revision.h | 5 +-
setup.c | 7 +-
sha1_file.c | 32 ++-
t/t0410-partial-clone.sh | 343 +++++++++++++++++++++++++
transport.c | 8 +
transport.h | 11 +
32 files changed, 899 insertions(+), 97 deletions(-)
create mode 100644 fetch-object.c
create mode 100644 fetch-object.h
create mode 100755 t/t0410-partial-clone.sh
--
2.9.3
next reply other threads:[~2017-12-05 16:59 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-05 16:58 Jeff Hostetler [this message]
2017-12-05 16:58 ` [PATCH v6 01/12] extension.partialclone: introduce partial clone extension Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 02/12] fsck: introduce partialclone extension Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 03/12] fsck: support refs pointing to promisor objects Jeff Hostetler
2017-12-07 19:18 ` Brandon Williams
2017-12-07 19:27 ` Jonathan Tan
2017-12-07 19:40 ` Brandon Williams
2017-12-05 16:58 ` [PATCH v6 04/12] fsck: support referenced " Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 05/12] fsck: support promisor objects as CLI argument Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 06/12] index-pack: refactor writing of .keep files Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 07/12] introduce fetch-object: fetch one promisor object Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 08/12] sha1_file: support lazily fetching missing objects Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 09/12] fixup: sha1_file: convert gotos to break/continue Jeff Hostetler
2017-12-05 20:54 ` Junio C Hamano
2017-12-05 22:02 ` Jeff Hostetler
2017-12-05 21:03 ` Junio C Hamano
2017-12-07 19:44 ` Brandon Williams
2017-12-05 16:58 ` [PATCH v6 10/12] fixup: sha1_file: add TODO Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 11/12] rev-list: support termination at promisor objects Jeff Hostetler
2017-12-05 16:58 ` [PATCH v6 12/12] gc: do not repack promisor packfiles Jeff Hostetler
2017-12-05 20:02 ` [PATCH v6 00/12] Partial clone part 2: fsck and promisors Jonathan Tan
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=20171205165854.64979-1-git@jeffhostetler.com \
--to=git@jeffhostetler.com \
--cc=christian.couder@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jeffhost@microsoft.com \
--cc=jonathantanmy@google.com \
--cc=peff@peff.net \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public 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).