git - своими - супер туалет для кошек




ошибка: сбой RPC; передача скручивания закрыта с оставшимися данными чтения (8)

Я пытаюсь клонировать репозиторий из GitLab (GitLab 6.6.2 4ef8369) и ошибка:

remote: Counting objects: 66352, done.
remote: Compressing objects: 100% (10417/10417), done.
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

Как избежать этой ошибки?


Изменение протокола git clone, чтобы попробовать.

например, эта ошибка произошла, когда "git clone https: // xxxxxxxxxxxxxxx "

вы можете попробовать с "git clone git: // xxxxxxxxxxxxxx", может быть, тогда хорошо.


Как упомянуто выше, прежде всего запустите вашу команду git из bash, добавив вначале расширенные директивы журнала: GIT_TRACE=1 GIT_CURL_VERBOSE=1 git ...

например, GIT_CURL_VERBOSE=1 GIT_TRACE=1 git -c diff.mnemonicprefix=false -c core.quotepath=false fetch origin Это покажет вам подробную информацию об ошибке.


Проблемы с сетевым подключением.
Возможно из-за постоянного тайм-аута соединения.
Лучший способ - перейти на другую сеть.


Простое решение: вместо того, чтобы клонировать через https, клонировать его через ssh.

Например:

git clone https://github.com/vaibhavjain2/xxx.git - Avoid
git clone [email protected]:vaibhavjain2/xxx.git - Correct

Через несколько дней сегодня я просто решил эту проблему. Создайте ключ ssh, следуйте этой статье:

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

Объявите это

  1. Git провайдер (GitLab, что я использую, GitHub).
  2. Добавьте это к местной идентичности.

Затем клонируйте по команде:

git clone [email protected]:my_group/my_repository.git

И ошибок не бывает.

Вышеуказанная проблема

ошибка: сбой RPC; передача curl 18 закрыта с оставшимися незавершенными данными чтения

потому что есть ошибка при клонировании по протоколу HTTP (команда curl ).

И вы должны увеличить размер буфера:

git config --global http.postBuffer 524288000

Эти шаги работали для меня: используя git:// вместо https://


Это случается чаще, чем когда-либо, у меня медленное интернет-соединение, и я должен клонировать прилично огромный репозиторий git. Наиболее распространенная проблема заключается в том, что соединение закрывается и весь клон отменяется.

Cloning into 'large-repository'...
remote: Counting objects: 20248, done.
remote: Compressing objects: 100% (10204/10204), done.
error: RPC failed; curl 18 transfer closed with outstanding read data remaining 
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

После многих проб и ошибок и большого количества «неожиданных зависаний удаленного конца» у меня есть способ, который работает для меня. Идея состоит в том, чтобы сначала сделать мелкий клон, а затем обновить репозиторий своей историей.

$ git clone http://github.com/large-repository --depth 1
$ cd large-repository
$ git fetch --unshallow







gitlab