Gitでclone中 fatal: early EOF, The remote end hung up unexpectedly, index-pack failed

スポンサーリンク
Git

Git

 

 

Gitでclone中

fatal: early EOF, The remote end hung up unexpectedly, index-pack failed

というエラーが発生したので原因を調査しました。

 

early EOF, The remote end hung  up unexpectedly, index-pack failed

WindowsのGitクライアント

Git SCMをコマンドラインで使っています。

 

Gitで作ったリポジトリをcloneしている途中でエラーが発生しました。

 

 

何度やっても同じエラーが発生します。

 

TortoiseGitを使っても Network error: Software caused connection abort

 

Git SCMがよくないのかなと思って、TortoiseGitをインストールして

TortoiseGitで試してみました。

 

WS000298

 

image

 

remote: Counting objects: 36990, done.
Write failed: Connection reset by peer
fatal: early EOF
remote: Compressing objects: 100% (14813/14813), done
fatal: The remote end hung up unexpectedly.
fatal: index-pack failed
git did not exit cleanly (exit code 128)

 

 

画面の通り、カメがコケた感じです。

 

 

何度もやってみて感じたことは、

remote: Compressing objects: 100% done

の後で

 

Receiving objects: 9%(5404/59493), 46.60 MiB | 5.97 MiB/s

 

と表示されて、データがサーバーから転送されるのですが、データ転送途中でsshが切断されているような印象です。

 

sshのクライアントを変更

 

これは、TortoiseGitの設定画面です。

 

image

 

Networkのところで、SSH clientとして、デフォルトでは、以下のようになっています。

C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe

 

 

sshの切断が原因と仮定するなら、いろいろ試してみようということで、sshのクライアントを変更してみました。

 

C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe

(TortoiseGit付属のデフォルトのsshクライアント)

 

 

C:\Program Files\TortoiseGit\bin\TortoisePlink.exe

(TortoiseGit付属で、互換性保持のためのインストールされる古いsshクライアント)

 

 

C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe

(TortoiseSVN付属のsshクライアント)

 

 

C:\Program Files (x86)\Git\bin\ssh.exe

(Git SCM付属のsshクライアント)

 

結果は。。。

すべてNGでした。

 

サーバーでgit gc、git repackで解決

解決策がよくわからず調べてみたところ、とりあえず、

 

サーバー側でGC(ガーベッジコレクション)してrepackせよ

 

と、書いてありました。

 

 

納得しないけれど他に解決策がないのでサーバー側でgcしてみました。

 

 

 

時間かかりましたが、リポジトリが超絶に小さくなりました。

 

 

そして、さきほどまで何度やっても失敗していた

git cloneを実行すると。。。。。。。

 

無事にclone出来ました。

 

 

Subversionではリポジトリの肥大化に苦労していましたが、さすがはGit。

素晴らしい出来です。

 

調べる限り、git、は時々自動でgcを行うようですが、

注意点として、サイズによっては時間がかかることと

「Out of memory」することがあるようです。

 

Gitについてのおすすめの本

 

↓Gitについてのおすすめの本はコチラ

Git

 

 

コメント