Pagrindinis » Hostingas » „Git Clone“ nustatymas „Early EOF“ Fatal Error

    „Git Clone“ nustatymas „Early EOF“ Fatal Error

    The “gito klonas” komanda - kaip rodo jo pavadinimas - leidžia kopijuoti visą saugyklą iš nuotolinio į vietinį arba atvirkščiai. Nors tai yra gana paprasta ir tiesiai į priekį nukreipta komanda, kartais gali kilti problemų.

    Anksčiau šią savaitę vykdydamas įvyko klaida gito klonas, ir klaida atrodo taip:

     klaida: pakuotės objektai mirė nuo signalo 9.20 MiB | 79,00 KiB / s klaida: git upload-pack: git-pack-objektai mirė su klaida. mirtinas: git upload-pack: nutraukimas dėl galimo kapinyno korupcijos nuotolinėje pusėje. nuotolinis: nutraukimas dėl galimo kapinyno korupcijos nuotolinėje pusėje. mirtinas: ankstyvieji EOF: 1% (66/3818), 6,04 MiB | 53,00 KiB / s

    Po kai kurių tyrimų ir derinimo, čia yra dvi pagrindinės mirtinos klaidos priežastys.

    1. Lėtas interneto ryšys

    Klaidos priežastis

    Kapinynas yra didžiulis, o interneto ryšys yra tiesiog per lėtas.

    Tai kilo iš mano asmeninės patirties - bandžiau klonuoti apie 1,5 GB talpą. Jis nesilaikė skirtingo atsisiuntimo%, kartais po 20 MB, kartais po 60 MB, 200 MB ir tt.

    Sprendimas

    Perėjimas prie greitesnio ir stabilesnio interneto ryšio padeda. Su greitesniu ryšiu galėjau priartėti prie 1.5Gb. Vienu metu galiu klonuoti be jokių klaidų.

    2. Didžiulė saugykla

    Klaidos priežastis

    Duomenų saugykla, kurią bandote klonuoti, yra didelė, atsižvelgiant į failo dydį. Bandydamas klonuoti, nuotolinis serveris tiesiog neturi pakankamai atminties, kad galėtų susidoroti su vykdymu.

    Sprendimas

    Kompresijos posūkis. Git klonas iš dalies. Sėkmingai klonuokite likusią dalį.

    1. Pirma, išjunkite „Git“ suspaudimą.

      git config --global core.compression 0
    2. Tada atlikite dalinį saugyklos kloną --1 gylis parametras. Pakeisti [email protected]/path/to/git_repo/ su faktiniu keliu į saugyklą.

      git klonas â ??  ?? gylis 1 ssh: //[email protected]/path/to/git_repo/
    3. Toliau surinkite likusią saugyklą.

      git fetch --unshallow
    4. Galiausiai, jį užbaigite reguliariai traukdami.

      git fetch --unshallow

    Šie metodai išsprendė mano problemą. Tikiuosi, kad tai padės!