4

ローカル リポジトリに新しいブランチを作成し、いくつかコミットした後、それをリモート リポジトリにプッシュしたいと考えました。

git push オリジン new_branch

このエラーがあります:

$ git push オリジン new_branch

オブジェクトのカウント: 32、完了。

最大 2 つのスレッドを使用したデルタ圧縮。オブジェクトの圧縮: 100% (18/18)、完了。

オブジェクトの書き込み: 100% (18/18)、5.29 KiB、完了。合計 18 (デルタ 13)、再利用 0 (デルタ 0)

書き込みに失敗しました: 壊れたパイプ

致命的: リモート エンドが予期せず電話を切りました

致命的: リモート エンドが予期せず電話を切りました

$ git remote -v を使用すると

元の git@106.187.99.99:XXX.git (フェッチ)

元の git@106.187.99.99:XXX.git (プッシュ)

gitブランチ

fiberead_com$ git branch -a
* new_branch
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/dev
  remotes/origin/master
  remotes/origin/online

nginx.conf

user www-data;
worker_processes  1;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
    # multi_accept on;
}

http {
    include       /etc/nginx/mime.types;

    access_log  /var/log/nginx/access.log;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
#    keepalive_timeout  65;
client_header_timeout 3m;
client_body_timeout 3m;
keepalive_timeout 175 120;
client_max_body_size 35m;

    tcp_nodelay        on;


    gzip  on;
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
}

誰か助けてくれませんか?

私のgitサーバーはLinodeにあります。GITLABを使用していますが、他のプロジェクトにはこの問題はありません。新しいプロジェクトのみで、「git clone」を使用してコンピューターをプルします。しかし、コードをプッシュすると、何か問題が発生しました。

私はNginxを使用しています。

そして、「$ git push origin master」を使用していますが、同じ問題があります。

4

3 に答える 3

5

これは、リクエストのリッスンを担当する http サーバー (ここでは http を介した git プッシュ) が完了しなかったことを意味します。

  • サーバー上の問題が原因:
    上記の http サーバーのログのみに根本的な原因が含まれています (たとえば、メッセージが大きすぎてサーバーが処理できない、または適切な問題が発生している可能性があります)。
    これらのログは、etc/httpd/httpd.conf(Apache)、/var/log/nginx/error.log( NGiNX )、または gitlab 自体にある場合もあります。

  • または、リクエストを受信したことがないため、OP jesktopがここに当てはまることを確認します。

すべてのログを見つけましたが、エラー ログは空です。
問題はネットワークです。私は中国にいて、ここには特別なネットワークがあるからです。
したがって、VPN はこの問題を解決できます。

于 2012-08-24T14:35:32.513 に答える
0

これを試して:

git push origin feature/new_branch

また、接続が有効かどうかも確認してください。

于 2012-08-24T08:27:54.097 に答える
0

Google から来た人へ: 6 年経った今でも、これは定期的に発生します。非常に大きなバイナリを誤ってコミットしたときに、これが発生するのを見てきました(その他)。問題を解決するには、バイナリを削除して再コミットするだけでは十分ではありませんでした。Git の仕組みのせいで、もともとそれを含むコミットが残っていたので、サイズもそのままでした。解決策は、問題のあるコミットを完全にリベースすることでした。

原因として不適切なコミットを特定すると、これが発生するたびに解決策が明らかになりましたgit bisect。これは、おそらく年に 1 回か 2 回ポップアップしますが、常に大きなファイルが原因であるとは限りません。ここでの他の回答が正しく指摘しているように、ネットワークの問題を除外したら、私にとっての解決策は常に同じです-バイセクトし、問題のあるコミットを削除すると、プッシュできるようになります。

于 2018-11-09T00:16:03.680 に答える