From: Josh Steadmon <steadmon@google.com>
To: Jonathan Tan <jonathantanmy@google.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH v2] fetch-pack: write fetched refs to .promisor
Date: Tue, 15 Oct 2019 12:40:19 -0700 [thread overview]
Message-ID: <20191015194019.GC233821@google.com> (raw)
In-Reply-To: <20191015001231.97272-1-jonathantanmy@google.com>
On 2019.10.14 17:12, Jonathan Tan wrote:
> The specification of promisor packfiles (in partial-clone.txt) states
> that the .promisor files that accompany packfiles do not matter (just
> like .keep files), so whenever a packfile is fetched from the promisor
> remote, Git has been writing empty .promisor files. But these files
> could contain more useful information.
>
> So instead of writing empty files, write the refs fetched to these
> files. This makes it easier to debug issues with partial clones, as we
> can identify what refs (and their associated hashes) were fetched at the
> time the packfile was downloaded, and if necessary, compare those hashes
> against what the promisor remote reports now.
>
> This is implemented by teaching fetch-pack to write its own non-empty
> .promisor file whenever it knows the name of the pack's lockfile. This
> covers the case wherein the user runs "git fetch" with an internal
> protocol or HTTP protocol v2 (fetch_refs_via_pack() in transport.c sets
> lock_pack) and with HTTP protocol v0/v1 (fetch_git() in remote-curl.c
> passes "--lock-pack" to "fetch-pack").
>
> Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
> ---
> Changes from v1:
> - commit message explains scope of change ("it knows the name of the
> pack's lockfile)
> - explained what .promisor contains in comment in builtin/repack.c
> - moved .promisor writing until after we know that index-pack succeeded
> ---
Thanks, this looks good to me.
prev parent reply other threads:[~2019-10-15 19:40 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-26 21:47 [PATCH] fetch-pack: write fetched refs to .promisor Jonathan Tan
2019-08-27 20:27 ` Junio C Hamano
2019-08-27 21:50 ` Jonathan Tan
2019-09-05 7:01 ` Jeff King
2019-09-05 17:13 ` Junio C Hamano
2019-09-05 17:59 ` Jeff King
2019-09-05 18:39 ` Jonathan Tan
2019-10-02 16:03 ` Jeff King
2019-10-14 22:27 ` Josh Steadmon
2019-10-14 23:56 ` Jonathan Tan
2019-10-15 0:12 ` [PATCH v2] " Jonathan Tan
2019-10-15 19:40 ` Josh Steadmon [this message]
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191015194019.GC233821@google.com \
--to=steadmon@google.com \
--cc=git@vger.kernel.org \
--cc=jonathantanmy@google.com \
/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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.