Página principal » Alojamiento » Arreglando el error fatal de EOFs tempranos de Git Clone

    Arreglando el error fatal de EOFs tempranos de Git Clone

    los “git clon” comando - como su nombre sugiere - le permite duplicar un repositorio completo de remoto a local, o viceversa. Aunque es un comando git bastante simple y directo, a veces, todavía pueden surgir problemas.

    A principios de esta semana, recibí un error al ejecutar git clon, y el error se parece a lo siguiente:

     error: paquete-objetos murieron de señal 9.20 MiB | 79.00 KiB / s error: git upload-pack: git-pack-objects murió con error. fatal: git upload-pack: aborting debido a la posible corrupción del repositorio en el lado remoto. remoto: abortar debido a la posible corrupción del repositorio en el lado remoto. fatal: primeros EOFs: 1% (66/3818), 6.04 MiB | 53.00 kBB / s

    Después de investigar y depurar, estas son las dos causas principales del error fatal..

    1. Conexión a Internet lenta

    Causa de error

    El repositorio es enorme y la conexión a Internet es simplemente demasiado lenta.

    Esto vino de mi experiencia personal: estaba intentando clonar un repositorio de aproximadamente 1.5Gb. Continuó fallando a una tasa diferente de% descargado, a veces después de 20Mb, a veces después de 60Mb, 200Mb, etc..

    Solución

    Cambiar a una conexión a Internet más rápida y estable ayuda. Con una conexión más rápida, pude acercarme a 1.5Gb. En un momento puedo clonar sin ningún error.

    2. enorme repositorio

    Causa de error

    El repositorio que está intentando clonar es grande, en términos de tamaño de archivo. Al intentar clonarlo, el servidor remoto simplemente no tiene suficiente memoria para hacer frente a la ejecución.

    Solución

    Giro de la compresión. Git clone parcialmente. Cuando tenga éxito, clona el resto..

    1. Primero, apaga la compresión Git.

      git config --global core.compression 0
    2. Luego haz un clon parcial del repositorio con --profundidad 1 parámetro. Reemplazar [email protected]/path/to/git_repo/ con la ruta real al repositorio.

      git clone â ???? profundidad 1 ssh: //[email protected]/ruta/para/git_repo/
    3. A continuación, recupera el resto del repositorio..

      git fetch --unshallow
    4. Finalmente, termínalo con un tirón regular..

      git fetch --unshallow

    Estos métodos resolvieron mi problema. Espero eso ayude!