Web lists-archives.com

Re: Partial clone - bad pack header?




On Mon, 4 Feb 2019 at 23:28, Jeff King <peff@xxxxxxxx> wrote:
>
> On Mon, Feb 04, 2019 at 01:45:35PM +0000, Luke Diamand wrote:
>
> > I tried to do a partial clone, but it gave me a "bad pack header". Is
> > there anything I can do to debug this?
> >
> > I did "git config uploadpack.allowfilter true" in my repo.
> > Then I went to a scratch directory and did:
> > $ git clone --filter=blob:limit=10M ssh://localhost/~/git/my_big_repo
> > remote: Enumerating objects: 1619425, done.
> > remote: Counting objects: 100% (1619425/1619425), done.
> > remote: Compressing objects: 100% (362435/362435), done.
> > remote: Total 1619425 (delta 1225623), reused 1604277 (delta 1211975)
> > Receiving objects: 100% (1619425/1619425), 10.34 GiB | 35.61 MiB/s, done.
> > Resolving deltas: 100% (1225623/1225623), done.
> > Note: checking out 'a943f529b4781f34602f1ad5aab99a8699975c29'.
> > [...]
> > fatal: the remote end hung up unexpectedly
> > fatal: protocol error: bad pack header
> > warning: Clone succeeded, but checkout failed.
>
> Just a guess, but does setting uploadpack.allowAnySHA1InWant to "true"
> in the source repo help?

That's a very good guess - it works a treat with that!

>
> By default, upload-pack will not allow the client to request those
> arbitrary blob sha1s. I thought it was _supposed_ to notice this and
> complain with a nice error message, but I know I have run into cases in
> the past where it does not (but never tracked it down -- this may well
> be one of them).
>
> -Peff