8

bitbucket リポジトリにプッシュしようとすると、次のエラーが発生します。(実際、GitHubでも同じです)。

オブジェクトのカウント: 48、完了。
最大 2 つのスレッドを使用したデルタ圧縮。
オブジェクトの圧縮: 100% (38/38)、完了。
オブジェクトの書き込み: 100% (48/48)、1.95 MiB | 38 KiB/秒、完了。
合計 48 (デルタ 9)、再利用 0 (デルタ 0)
致命的: リモート エンドが予期せずハングアップしました
エラー: RPC が失敗しました。結果 = 56、HTTP コード = 0
致命的: ダイ ハンドラーで再帰が検出されました
すべてが最新です

ほとんどの場合、次のような別のエラーが発生します

エラー: RPC が失敗しました。結果 = 56、HTTP コード = 0
致命的: リモート エンドが予期せず電話を切りました

いずれにしても PUSH は失敗します。これは、私が推測する大きなファイル専用です。小さな変更の場合は問題なく動作します。2M にアップデートhttp.postBufferしましたが、まだ動作しません。

重要 3G 接続と CDMA ベースの EVDO インターネット接続を使用しています。3G 接続では、PUSH と他のすべてが正常に動作します。しかし、EVDO を使用すると、上記のエラーが発生します。そのため、EVDO または ISP との接続の問題が原因であるという印象を受けています。

どうすればこれを解決できますか?

4

6 に答える 6

15

通常、リモート エンドのハングアップは、権限のないユーザーによるものです。しかし、正常に接続できれば、それは問題ではありません。

本当にファイルサイズの問題だと思うなら、これが私の最善の提案です:

git クライアントがリクエストの「チャンク化」を開始するデフォルトのサイズは 1MB です。この設定は、次を使用して変更できます。

git config http.postBuffer 524288000

この例では、postBuffer を 500MB に設定します。この値をいじってみて、それが役立つかどうかを確認してください。

于 2013-04-09T15:02:52.667 に答える
2

私はビットバケットでこの問題に遭遇し、postBufferおそらく必要だったのですが、問題を解決しませんでした。

これを解決するには、別のインターネット接続を使用するしかありませんでした。

GIT_CURL_VERBOSE=1返されるエラーは次のとおりです。

* SSLRead() return error -9820
* Connection died, retrying a fresh connect
* Closing connection 0

その後

* SSLWrite() returned error -36
* Closing connection 1
error: RPC failed; result=55, HTTP code = 0
fatal: The remote end hung up unexpectedly

うまくいけば、それが誰かの役に立てば幸いです。おそらく、より知識のある人がこれらの SSL エラーを理解していますか?

アップデート:

私が抱えていた問題はgit push、レポへの初期化であり、それ以来、元のインターネット接続を使用して同じビットバケット レポに同じプッシュを試みましたが、動作します。

于 2016-02-12T12:52:14.590 に答える
1

BSNL の EVDO 接続に問題があることがわかりました。残念ながら、BSNL の技術者は誰も私を助けることができませんでした。だから私は接続を破棄しました。

古き良き有線ブロードバンドに戻る:D.

于 2014-03-09T14:32:10.307 に答える
1

原因が巨大なファイルであり、http.postBufferうまくいかない場合は、http から ssh (つまりssh://git@<your git repository>) に切り替えてみてください。これにより、ハードルを乗り越えることができます。

于 2016-04-14T14:46:15.210 に答える