question stupide avec Github passe en ce moment. J'ai une quantité décente de changements (~ 120 Mo de taille), quand je tente de pousser, c'est ce qui se passe:
error: RPC failed; result=22, HTTP code = 413
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Jai deja fait
git config http.postBuffer 524288000
, donc cela ne semble pas être le problème. Qu'est ce que ça pourrait être?
Je l'ai compris !!! Bien sûr, je le ferais juste après avoir frappé après!
Le référentiel était configuré pour utiliser l'URL HTTPS, je l'ai changé en adresse SSH et tout a repris son travail.
Si vous obtenez l'erreur 413, alors le problème ne concerne pas git mais avec votre serveur Web. C'est votre serveur Web qui bloque les gros fichiers de téléchargement.
Il suffit de charger votre nginx.conf
et ajouter client_max_body_size 50m;
(modifiez la valeur selon vos besoins) dans le bloc http.
Rechargez nginx pour accepter la nouvelle configuration en exécutant Sudo service nginx reload
et essayez à nouveau de pousser votre commit sur http.
Dans votre httpd.conf
ajouter LimitRequestBody 52428800
_ (modification de la valeur selon vos besoins) dans un <Directory />
bloquer. Ce faisant, vous pouvez limiter la demande à l’ensemble du système de fichiers du serveur, à un seul hôte virtuel ou à un répertoire.
J'espère que ça aide.
la commande pour changer l’URL distante (à partir de https -> git @ ...) ressemble à ceci
git remote set-url Origin [email protected]:GitUserName/GitRepoName.git
Origin, voici le nom de ma télécommande (faites git remote et ce qui en sort est votre origine).
J'ai eu le même problème, mais j'utilisais un proxy inverse.
J'ai donc dû mettre
client_max_body_size 50m;
dans les deux fichiers de configuration:
J'avais déjà "HTTPS //" dans l'URL git, mais j'ai rencontré cette erreur.
Tout ce que j'ai fait est d'ajouter l'option -u avec Push et cela a fonctionné.
git Push -u Origin master
Pour ceux qui utilisent IIS 7 pour héberger un git http
/https
endpoint:
Vous devez augmenter votre uploadReadAheadSize
.
Lancer Gestionnaire des services Internet (IIS)
Développez le champ Serveur
Développer les sites
Sélectionnez le site pour lequel vous souhaitez effectuer la modification.
Dans la section Fonctionnalités, double-cliquez sur Configuration Editor
Sous Section
, sélectionnez: system.webServer > serverRuntime
Modifiez la section uploadReadAheadSize
(la valeur doit être comprise entre 0
et 2147483647
.)
Cliquez sur Apply
Redémarrer le site Web
Si vous faites face à ce problème en poussant des modifications de grande taille, exécutez la commande ci-dessous dans le terminal.
git config --global http.postBuffer 157286400
Voir this pour plus de détails.
J'ai eu cette erreur (erreur: RPC a échoué; résultat = 22, code HTTP = 41) lorsque j'ai essayé de pousser mon commit initial dans un nouveau référentiel BitBucket. L'erreur s'est produite pour moi parce que le référentiel BitBucket avait une branche no master. Si vous utilisez SourceTree, vous pouvez créer une branche principale sur l’Origine en appuyant sur le bouton bouton Git Flow.
J'ai eu ce problème lorsque j'essaie de cloner un repo git sur une machine Linux.
l'URL suivante fonctionne pour moi dans Windows
http://[email protected]/scm/project/swamy-main.git
alors que l'URL suivante fonctionne sur la machine Linux et qu'il a https dans l'URL
https://[email protected]/scm/project/swamy-main.git
echec du clone https of Gists (ssh fonctionne, voir ci-dessous):
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
Cela marche: git clone [email protected]:123456.git
A été confronté au même problème. Dans mon cas, il s'agissait de versions GIT non compatibles entre plusieurs utilisateurs accédant au même projet (pull/push).
viens de mettre à jour la version de GIT et de mettre à jour le chemin d'accès sur Android et que tout fonctionne bien pour moi).
Modifier -
Git pour Windows (1.9.5) ayant un problème, la mise à jour de la même chose peut aider.
L'erreur se produit dans 'libcurl', qui est le protocole sous-jacent pour le téléchargement https. La solution consiste à mettre à jour libcurl. Pour obtenir plus de détails sur l'erreur, définissez GIT_CURL_VERBOSE = 1
https://confluence.atlassian.com/pages/viewpage.action?pageId=306348908
Signification de l'erreur, conformément à la documentation de libcurl: CURLE_HTTP_RETURNED_ERROR (22)
Cela est renvoyé si CURLOPT_FAILONERROR est défini sur TRUE et que le serveur HTTP renvoie un code d'erreur> = 400.
Utilisez-vous des liens https au lieu de liens ssh? Étant donné que le lien https est limité par la taille du téléchargement de HttpServer (tel que Apache, Ngnix), aucune restriction de ce type n’existe lors de l’utilisation de ssh.
Utilisez la méthode suivante pour basculer vers le lien 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
Si vous déterminez le nom du référentiel distant, passez directement à l'étape 4. Vous pouvez maintenant exécuter l'opération Push avec plaisir.
A été confronté au même problème mais il a été résolu en nettoyant le référentiel git (Nettoyez les fichiers non suivis en utilisant "git clean").
J'ai eu le même problème (sous Win XP), j'ai mis à jour le fichier libcurl-4.dll de mon répertoire Git bin vers la version SSL à partir de http://www.paehl.com/open_source/?download=curl_DLL_ONLY .7z (renommer libcurl4.dll). Tout fonctionne bien maintenant.
Besoin de changer l'URL distante en ssh ou https
git remote set-url Origin [email protected]:laravel/laravel.git
ou
git remote set-url Origin https://github.com/laravel/laravel.git
J'espère que ça va aider :)
quand j'ai utilisé l'URL https pour pousser vers le maître distant, j'ai rencontré le même problème, je l'ai changé en adresse SSH, et tout a repris son fonctionnement sans faille.