Stanovenie gitového klonu Predčasné EOF
“git klon” príkaz - ako naznačuje jeho názov - umožňuje duplikovať celé úložisko zo vzdialeného na lokálny alebo naopak. Aj keď je to pomerne jednoduchý a priamy príkaz git, niekedy môžu vzniknúť problémy.
Začiatkom tohto týždňa som pri spustení dostal chybu git klon, a chyba vyzerá takto:
chyba: objekty pack zomreli na signál 9.20 MiB | 79.00 KiB / s chyba: git upload-pack: git-pack-objects zomrel s chybou. fatal: git upload-pack: prerušenie kvôli možnému poškodeniu repozitára na vzdialenej strane. vzdialené: zrušenie z dôvodu možného poškodenia úložiska na vzdialenej strane. fatálne: skoré EOF: 1% (66/3818), 6.04 MiB | 53,00 KiB / s
Po nejakom výskume a ladení sú tu dve hlavné príčiny fatálnej chyby.
1. Pomalé internetové pripojenie
Príčina chyby
Úložisko je obrovské a internetové pripojenie je jednoducho príliš pomalé.
Prišlo to z mojej osobnej skúsenosti - pokúšal som sa klonovať úložisko okolo 1,5 GB. Pokračovala v neúspešnom poklese pri odlišnej rýchlosti preberania%, niekedy po 20Mb, niekedy po 60Mb, 200Mb atď..
Riešenie
Zmena na rýchlejšie a stabilnejšie internetové pripojenie pomáha. S rýchlejším pripojením som sa mohol dostať bližšie k 1.5Gb. V jednom bode som schopný klonovať bez akejkoľvek chyby.
2. Obrovský úložisko
Príčina chyby
Úložisko, ktoré sa pokúšate klonovať, je veľké, pokiaľ ide o veľkosť súboru. Pri pokuse o klonovanie servera na diaľku jednoducho nemá dostatok pamäte, aby sa vyrovnal s vykonaním.
Riešenie
Otočenie kompresie. Git klon čiastočne. Keď je to úspešné, klonujte zvyšok.
-
Najskôr vypnite kompresiu Git.
git config --global core.compression 0
-
Potom vykonajte čiastočný klon úložiska
--hĺbka 1
parameter. vymeniť[email protected]/path/to/git_repo/
so skutočnou cestou k úložisku.git klon¢Hĺbka 1 ssh: //[email protected]/path/to/git_repo/
-
Potom načítajte zvyšok úložiska.
git fetch --unshallow
-
Nakoniec ju dokončite pravidelným ťahom.
git fetch --unshallow
Tieto metódy riešili môj problém. Dúfam, že to pomôže!