git clone git.idk.i2p: unexpected disconnect

Misc topics about I2P
Post Reply
User avatar
lgillis
Posts: 144
Joined: 20 Oct 2018 12:52

git clone git.idk.i2p: unexpected disconnect

Post by lgillis »

For reasons I don't know, Git failed to duplicate the repository over three attempts in the past few days. What is the reason, can I fix this or is the problem on the archive side?

#+begin_quote
git clone http://git.idk.i2p/i2p-hackers/i2p.www.git
Klone nach 'i2p.www'...
remote: Enumerating objects: 53865, done.
remote: Counting objects: 100% (1621/1621), done.
remote: Compressing objects: 100% (646/646), done.
Fehler: RPC fehlgeschlagen; curl 18 transfer closed with outstanding read data remaining
Fehler: 4535 Bytes des Bodys werden noch erwartet
fetch-pack: unexpected disconnect while reading sideband packet
Schwerwiegend: zu frühes Dateiende
Schwerwiegend: fetch-pack: ungültige index-pack Ausgabe
#+end_quote
Spring https://www.youtube.com/playlist?list=PLF-q-IGQQb1uK7fYuaQiRpcORDSmfsY2n
R0ckP1us
Posts: 23
Joined: 26 Mar 2023 09:08
Contact:

Re: git clone git.idk.i2p: unexpected disconnect

Post by R0ckP1us »

This is likely to be attacked or interfered with the link. My previous link was super slow.
Hi~ My E-mail : rockplus@mail.i2p
http://doub.i2p
User avatar
lgillis
Posts: 144
Joined: 20 Oct 2018 12:52

Re: git clone git.idk.i2p: unexpected disconnect

Post by lgillis »

The simplest explanation is usually the correct one. Github has mirrored the data and it works.
By the way, after git downloaded the approximately 339 MB via git.idk.i2p, it discards them completely after the error.

And while I was writing this, the I2P forum kicked me out again.

I2P is just ridiculous; I even lose the desire to mock.
Spring https://www.youtube.com/playlist?list=PLF-q-IGQQb1uK7fYuaQiRpcORDSmfsY2n
echelon
Posts: 261
Joined: 10 Feb 2018 13:36

Re: git clone git.idk.i2p: unexpected disconnect

Post by echelon »

HI

Git via I2P is a bit flaky, as it does not do any resume.
That's why fetching the i2p.i2p git repo via I2P may break often and you need to retry often until the connection was long enough stable to fetch the whole repo.
Solutions: torrents do exist, use clearnet, or use git to fetch only this first checkin and do git pull afterwards.
https://geti2p.net/en/blog/post/2020/03/06/git-over-i2p
does help you with it.

echelon
User avatar
lgillis
Posts: 144
Joined: 20 Oct 2018 12:52

Re: git clone git.idk.i2p: unexpected disconnect

Post by lgillis »

And, echelon, has anyone reported the problem as a bug to Git?

Just kidding. As the project spokesperson, your appeasement is of course directed at those who are interested but not being able to read and write so well. On the one hand this is understandable, because the social interaction shapes, on the other hand the consumption of bandwidth is useless. It would be better to turn off the instances that don't work and refer them to the Internet. Throwing in the towel is not a disgrace, but is considered sporty!
Spring https://www.youtube.com/playlist?list=PLF-q-IGQQb1uK7fYuaQiRpcORDSmfsY2n
echelon
Posts: 261
Joined: 10 Feb 2018 13:36

Re: git clone git.idk.i2p: unexpected disconnect

Post by echelon »

HI

And you are still wrong again, I am not the project spokesman.

echelon
User avatar
lgillis
Posts: 144
Joined: 20 Oct 2018 12:52

Re: git clone git.idk.i2p: unexpected disconnect

Post by lgillis »

Oh, sorry echelon. But good that we have clarified that and know, in a free anonymous environment it is only the arguments that convince.
Spring https://www.youtube.com/playlist?list=PLF-q-IGQQb1uK7fYuaQiRpcORDSmfsY2n
diego72pl
Posts: 1
Joined: 17 Apr 2023 22:20

Re: git clone git.idk.i2p: unexpected disconnect

Post by diego72pl »

Thank you Echelon! I had missed that it said:
You might get an error where the remote end hangs up unexpectedly. Unfortunately git still doesn’t support resumable cloning. Until it does, there are a couple fairly easy ways to handle this. The first and easiest is to try and clone to a shallow depth:
First, the i2p link to the mentioned page:
http://i2p-projekt.i2p/en/blog/post/2020/03/06/git-over-i2p

What that says is in the quote at the bottom of this post. While the resuming does not always work, it led to finding a different workaround. Also, if you only need the current state instead of the history, you can just do the git clone with the depth of 1. What does work is to substitute:

Code: Select all

git fetch --depth X
with increasing values of X until all the history is retrieved. This allows the progress to be saved to the last completed depth. This is instead of using:

Code: Select all

git fetch --unshallow

Of note, these methods do not fetch all the branches. To do that run the following (--depth can be added if there are disconnects, but this may be less data and that beb unnecessary):

Code: Select all

git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
git fetch origin
Here is the short version for anyone else who encounters this issue. If you want the i2p code instead of the www, substitute i2p.i2p for i2p.www:

The relevant part if you did not make an account on the git server:

Code: Select all

http_proxy=http://localhost:4444 git clone --depth=1 http://git.idk.i2p/i2p-hackers/i2p.www.git
cd i2p.www
git fetch --unshallow
If you are using windows:

Code: Select all

set http_proxy=http://localhost:4444
git clone --depth=1 http://git.idk.i2p/i2p-hackers/i2p.www.git
cd i2p.www
git fetch --unshallow
You could optionally set the proxy as a git variable, which should be cross platform. For the current repo(only after it exists), or add the globally flag:

Code: Select all

git config --add http.proxy http://localhost:4444
git config --global --add http.proxy http://localhost:4444

I hope this helps someone else. :)
Post Reply