Re: Argument list too long when fetching many missing objects from partial clone
- From
Bagas Sanjaya <bagasdotme@gmail.com>
- Date
- Mar 2, 2021, 06:55 UTC
- Message-ID
- <f185e87e-d8d2-3ac4-9ca1-7b96ffb30562@gmail.com>
- In-Reply-To
- <CAGyf7-GJQU1s4H-pgVMEc_WB3C4ehppLieT2oiyxa5B8=yyjxA@mail.gmail.com>
After trying your suggestion, I now get:
error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 fatal: unable to write request to remote: Broken pipe
On 02/03/21 02.22, Bryan Turner wrote:
Show 71 quoted lines
> On Mon, Mar 1, 2021 at 5:20 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote: >> >> Thank you for filling out a Git bug report! >> Please answer the following questions to help us understand your issue. >> >> What did you do before the bug happened? (Steps to reproduce your issue) >> >> I'm poking around with partial clone. On my local server on my computer >> I have full clone of Git (git.git) repo. >> >> I do partial clone from that server as remote (which is actually on the same >> computer): >> >> git clone https://my-local-server.git/myself/git.git --filter=blob:none >> >> Inside the partial clone, I tried to convert it to full clone. First, I gather >> list of missing objects: >> >> git rev-list --objects --all --missing=print | grep -oP '^\?\K\w+' > .git/missing.list >> >> Then I fetched those: >> >> git fetch origin $(cat .git/missing.list) > > Since you're on Git 2.30, instead of trying to place all the object > IDs on the `git fetch` command line, have you tried adding `--stdin` > and having it read from your `missing.list` directly? Something like > `git fetch --stdin origin <.git/missing.list` might do what you need. > >> >> What did you expect to happen? (Expected behavior) >> >> All missing objects fetched successfully >> >> What happened instead? (Actual behavior) >> >> Git returned: >> >> -bash: /opt/git/bin/git: Argument list too long >> >> What's different between what you expected and what actually happened? >> >> (nothing) >> >> Anything else you want to add: >> >> I think the problem lies on how to feed list of 110K+ objects to `git fetch`. >> >> Note: Both the local server and the computer use Git 2.30.1 >> >> Please review the rest of the bug report below. >> You can delete any lines you don't wish to share. >> >> [System Info] >> git version: >> git version 2.30.1 >> cpu: x86_64 >> built from commit: 773e25afc41b1b6533fa9ae2cd825d0b4a697fad >> sizeof-long: 8 >> sizeof-size_t: 8 >> shell-path: /bin/sh >> uname: Linux 5.10.11-kernelorg-upstream-generic #1 SMP Fri Jan 29 12:56:19 WIB 2021 x86_64 >> compiler info: gnuc: 9.3 >> libc info: glibc: 2.31 >> $SHELL (typically, interactive shell): /bin/bash >> >> [Enabled Hooks] >> (none) >> >> -- >> An old man doll... just what I always wanted! - Clara
-- An old man doll... just what I always wanted! - Clara