push do git falha: falha de RPC; resultado = 22, código HTTP = 411
Eu tenho apenas um ramo. Por alguns meses eu tenho usado
comprometer-se com meu repositório local. Ontem à noite, depois que fiz algumas pequenas alterações no meu repositório local e tentei usar o mesmo comando, recebi este erro:
Pesquisei no Google e encontrei perguntas como esta e esta , mas nenhuma das respostas para essas perguntas resolve meu problema.
A maioria das respostas sugere o problema da cabeça separada . No entanto, não acho que minha cabeça esteja desapegada. Também não acho que estou no ramo errado (como só tenho um ramo ...)
Fiz algumas experiências para descobrir o que há de errado, e aqui estão os resultados que obtive:
(1) Primeiro vem a minha git statussaída
(2) Quando digito git reflog, posso ver todos os meus commits locais, mas o repositório remoto simplesmente não é atualizado.
(3) Quando digito git branch -a, recebo
(4) Quando digito git remote show origin, recebo
Eu acho que a última linha de saída (o "avanço rápido") é estranha, mas não tenho certeza do que está errado ...
fast-forwardablesignifica que você pode empurrar suas alterações locais para o ramo remoto, nada de criminoso :-)
— Maksym Polshcha
Se você tentar empurrar um grande conjunto de alterações para um repositório Git com HTTP ou HTTPS, você pode receber uma mensagem de erro como erro: RPC failed; result=22, HTTP code = 411. Isso é causado por um padrão de configuração do Git que limita certas operações HTTP a 1 megabyte.
Para alterar esse limite, execute no seu repositório local
onde bytes é o número máximo de bytes permitido. Por exemplo:
Por 500MB (obrigado @Hengjie)
Um exemplo é git config http.postBuffer 524288000para 500 MB.
Se você estiver usando o gitlab, pode ser necessário alterar também a sua configuração do nginx ( /etc/nginx/sites-available/gitlab). Mais informações: github.com/gitlabhq/gitlabhq/issues/3099
e se aparecer RPC failed; result=22, HTTP code = 502?
— Dipesh Raichana
Ainda estou recebendo o seguinte erro git: RPC falhou; resultado = 22, código HTTP = 504 no bitbucket no android studio
— DJtiwari 3/15
Você também pode fazer isso globalmente -
Isso permitirá que todos os repositórios locais enviem até 500 MB de dados.
Nenhuma das soluções fornecidas funcionou para nós. Tivemos que mudar para sshfazer isso funcionar em vez da HTTPSsolução.
Se você estiver usando o TortoiseGit for Windows, a maneira mais fácil é usar a configuração integrada.
No explorador de arquivos, pressione o botão esquerdo do mouse, selecione TortoiseGit -> Configurações . Aceite a mensagem informativa. Agora, você pode escolher se deseja configurar a propriedade apenas para o projeto ou sistema atual em branco. Para configuração em todo o sistema, pressione "editar systemit gitconfig" e adicione a próxima linha à seção [http]:
(se a seção [http]não existir, crie-a)
— Errepunto
Resolvi o erro 22 da seguinte maneira: No comando "git clone", NÃO forneço ao usuário: senha. O clone funcionou, mas não o empurrão. Solução para o erro 22: Modifique .git / config do URL da seguinte forma: url = http: // user: pwd @ host / ... Então, o push funcionou.