現在進行中のGithubに関する愚かな問題。かなりの量の変更(サイズは約120MB)がありますが、プッシュしようとすると、次のようになります。
error: RPC failed; result=22, HTTP code = 413
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
私はすでにやった
git config http.postBuffer 524288000
ので、それは問題ではないようです。どうなり得るか?
私はそれを考え出した!!!もちろん、私はポストを打った直後にしたいです!
HTTPS URLを使用するようにレポジトリを設定し、SSHアドレスに変更すると、すべてが問題なく動作するようになりました。
エラー413が発生した場合、この問題はgitではなくWebサーバーでにあります。大きなアップロードファイルをブロックしているのはWebサーバーです。
Httpブロックにnginx.conf
をロードし、client_max_body_size 50m;
を追加します(必要に応じて値を変更します)。
Sudo service nginx reload
を実行してnginxをリロードし、新しい構成を受け入れてから、http経由でコミットをプッシュしてください。
httpd.conf
ブロックで、LimitRequestBody 52428800
ブロック内に<Directory />
を追加します(必要に応じて値を変更します)。これを行うことで、サーバーファイルシステム全体の要求を制限できます。単一の仮想ホストまたはディレクトリだけです。
これがお役に立てば幸いです。
リモートURLを変更するコマンド(https-> git @ ...から)は次のようなものです
git remote set-url Origin [email protected]:GitUserName/GitRepoName.git
ここのOriginは、リモートの名前です(git remoteを実行すると、Originが表示されます)。
私は同じ問題を抱えていましたが、逆プロキシを使用していました。
だから私は設定する必要がありました
client_max_body_size 50m;
両方の設定ファイル内:
Git URLに既に「HTTPS //」が含まれていましたが、このエラーに直面していました。
私がしたことは、Pushでオプション-uを追加することだけでした。
git Push -u Origin master
IIS 7を使用してgit http
/https
エンドポイントをホストする場合:
uploadReadAheadSize
を増やす必要があります。
起動インターネットインフォメーションサービス(IIS)マネージャー
[サーバー]フィールドを展開します
サイトを展開する
変更するサイトを選択します。
[機能]セクションで、Configuration Editor
をダブルクリックします
Section
の下で選択:system.webServer > serverRuntime
uploadReadAheadSize
セクションを変更します(値は0
と2147483647
の間でなければなりません。)
クリック Apply
Webサイトを再起動します
大きなサイズの変更をプッシュしているときにこの問題に直面している場合は、ターミナルで以下のコマンドを実行します。
git config --global http.postBuffer 157286400
詳細については、 this を参照してください。
最初のコミットを新しいBitBucketリポジトリにプッシュしようとしたときに、このエラーが発生しました(error:RPC failed; result = 22、HTTP code = 41)。 BitBucketリポジトリにマスターなしブランチがあるため、エラーが発生しました。 SourceTreeを使用している場合、Git Flowボタンを押すと、Origin上にマスターブランチを作成できます。
Linuxマシンでgitリポジトリを複製しようとすると、この問題が発生しました。
windowsでは次のURLが機能しています
http://[email protected]/scm/project/swamy-main.git
一方、次のURLはLinuxマシンで機能し、URLにhttpsが含まれています
https://[email protected]/scm/project/swamy-main.git
要旨のhttpsクローンが失敗します(sshは動作します。以下を参照):
12:00 jean@laptop:~/tmp$ GIT_CURL_VERBOSE=1 git clone https://Gist.github.com/123456.git username
Initialized empty Git repository in /home/jean/tmp/username/.git/
* Couldn't find Host Gist.github.com in the .netrc file; using defaults
* About to connect() to Gist.github.com port 443 (#0)
* Trying 192.30.252.142... * Connected to Gist.github.com (192.30.252.142) port 443 (#0)
* found 141 certificates in /etc/ssl/certs/ca-certificates.crt
* server certificate verification OK
* common name: *.github.com (matched)
* server certificate expiration date OK
* server certificate activation date OK
* certificate public key: RSA
* certificate version: #3
* subject: C=US,ST=California,L=San Francisco,O=GitHub\, Inc.,CN=*.github.com
* start date: Mon, 30 Apr 2012 00:00:00 GMT
* expire date: Wed, 09 Jul 2014 12:00:00 GMT
* issuer: C=US,O=DigiCert Inc,OU=www.digicert.com,CN=DigiCert High Assurance CA-3
* compression: NULL
* cipher: ARCFOUR-128
* MAC: SHA1
> GET /123456.git/info/refs?service=git-upload-pack HTTP/1.1
User-Agent: git/1.7.1
Host: Gist.github.com
Accept: */*
Pragma: no-cache
< HTTP/1.1 301 Moved Permanently
< Server: GitHub.com
< Date: Fri, 01 Nov 2013 05:00:51 GMT
< Content-Type: text/html
< Content-Length: 178
< Location: https://Gist.github.com/Gist/123456.git/info/refs?service=git-upload-pack
< Vary: Accept-Encoding
<
* Ignoring the response-body
* Expire cleared
* Connection #0 to Host Gist.github.com left intact
* Issue another request to this URL: 'https://Gist.github.com/Gist/123456.git/info/refs?service=git-upload-pack'
* Couldn't find Host Gist.github.com in the .netrc file; using defaults
* Re-using existing connection! (#0) with Host Gist.github.com
* Connected to Gist.github.com (192.30.252.142) port 443 (#0)
> GET /Gist/123456.git/info/refs?service=git-upload-pack HTTP/1.1
User-Agent: git/1.7.1
Host: Gist.github.com
Accept: */*
Pragma: no-cache
< HTTP/1.1 200 OK
< Server: GitHub.com
< Date: Fri, 01 Nov 2013 05:00:52 GMT
< Content-Type: application/x-git-upload-pack-advertisement
< Transfer-Encoding: chunked
< Expires: Fri, 01 Jan 1980 00:00:00 GMT
< Pragma: no-cache
< Cache-Control: no-cache, max-age=0, must-revalidate
< Vary: Accept-Encoding
<
* Connection #0 to Host Gist.github.com left intact
* Couldn't find Host Gist.github.com in the .netrc file; using defaults
* About to connect() to Gist.github.com port 443 (#0)
* Trying 192.30.252.142... * connected
* Connected to Gist.github.com (192.30.252.142) port 443 (#0)
* found 141 certificates in /etc/ssl/certs/ca-certificates.crt
* SSL re-using session ID
* server certificate verification OK
* common name: *.github.com (matched)
* server certificate expiration date OK
* server certificate activation date OK
* certificate public key: RSA
* certificate version: #3
* subject: C=US,ST=California,L=San Francisco,O=GitHub\, Inc.,CN=*.github.com
* start date: Mon, 30 Apr 2012 00:00:00 GMT
* expire date: Wed, 09 Jul 2014 12:00:00 GMT
* issuer: C=US,O=DigiCert Inc,OU=www.digicert.com,CN=DigiCert High Assurance CA-3
* compression: NULL
* cipher: ARCFOUR-128
* MAC: SHA1
> POST /123456.git/git-upload-pack HTTP/1.1
User-Agent: git/1.7.1
Host: Gist.github.com
Accept-Encoding: deflate, gzip
Content-Type: application/x-git-upload-pack-request
Accept: application/x-git-upload-pack-result
Content-Length: 116
< HTTP/1.1 301 Moved Permanently
< Server: GitHub.com
< Date: Fri, 01 Nov 2013 05:00:53 GMT
< Content-Type: text/html
< Content-Length: 178
< Location: https://Gist.github.com/Gist/123456.git/git-upload-pack
< Vary: Accept-Encoding
<
* Ignoring the response-body
* Connection #0 to Host Gist.github.com left intact
* Issue another request to this URL: 'https://Gist.github.com/Gist/123456.git/git-upload-pack'
* Violate RFC 2616/10.3.2 and switch from POST to GET
* Couldn't find Host Gist.github.com in the .netrc file; using defaults
* Re-using existing connection! (#0) with Host Gist.github.com
* Connected to Gist.github.com (192.30.252.142) port 443 (#0)
> GET /Gist/123456.git/git-upload-pack HTTP/1.1
User-Agent: git/1.7.1
Host: Gist.github.com
Accept-Encoding: deflate, gzip
Content-Type: application/x-git-upload-pack-request
Accept: application/x-git-upload-pack-result
* The requested URL returned error: 400
* Closing connection #0
error: RPC failed; result=22, HTTP code = 400
これは動作します:git clone [email protected]:123456.git
同じ問題に直面していた。私の場合、同じプロジェクトにアクセス(プル/プッシュ)している複数のユーザー間で互換性のないGITバージョンでした。
gITバージョンを更新し、Androidスタジオ設定のパスを更新しました。
編集-
Git for Windows(1.9.5)には問題がありますが、同じものを更新すると役立つ場合があります。
エラーは 'libcurl'で発生します。これはhttpsアップロードの基礎となるプロトコルです。解決策は、何らかの方法でlibcurlをアップグレードすることです。エラーの詳細を取得するには、GIT_CURL_VERBOSE = 1を設定します
https://confluence.atlassian.com/pages/viewpage.action?pageId=306348908
Libcurlドキュメントによるエラーの意味:CURLE_HTTP_RETURNED_ERROR(22)
これは、CURLOPT_FAILONERRORがTRUEに設定され、HTTPサーバーが400以上のエラーコードを返す場合に返されます。
Sshリンクの代わりにhttpsリンクを使用しますか? httpsリンクはHttpServer(Apache、Ngnixなど)のアップロードのサイズによって制限されるため、sshを使用する場合、このような制限はありません。
次の方法を使用して、sshリンクに切り替えます。
$ git remote -v
Origin https://github.com/[user_name]/[project_name].git (fetch)
Origin https://github.com/[user_name]/[project_name].git (Push)
git remote set-url Origin [email protected]:[user_name]/[project_name].git
リモートリポジトリ名を決定したら、手順4に直接進みます。これで、Push操作を問題なく実行できます。
同じ問題に直面していましたが、gitリポジトリをクリーンアップすることで解決しました(「git clean」を使用して未追跡ファイルをクリーンアップします)。
同じ問題がありました(Win XPで)、Git binディレクトリのlibcurl-4.dllファイルを http://www.paehl.com/open_source/?download=curl_DLL_ONLYからSSLバージョンに更新しました.7z (libcurl4.dllに名前を変更)。すべて正常に動作しています。
リモートURLを ssh またはhttpsに変更する必要があります
git remote set-url Origin [email protected]:laravel/laravel.git
または
git remote set-url Origin https://github.com/laravel/laravel.git
希望、これが役立つ:)
https URLを使用してリモートマスターにプッシュすると、同じ問題に遭遇し、SSHアドレスに変更し、すべてが問題なく動作するようになりました。