Estou usando Git (e GitHub) diariamente e tudo está funcionando bem e, de repente, não consigo mais me comunicar com meu repositório GitHub remoto por meio de meus comandos Git. Quando tento "Git pull", ocorre o seguinte erro:
fatal: incapaz de acessar ' https://github.com/snahrvar/eatibl.git/ ': erro: 1407742E: Rotinas SSL: SSL23_GET_SERVER_HELLO: versão do protocolo de alerta tlsv1
Então, testei em vários repositórios e recebo os mesmos erros no meu computador. Outra pessoa interagiu com esses mesmos repositórios e funcionou bem para eles. Antes desse erro, eu fiz um "npm install sharp" em um projeto e acabou falhando, e eu suspeito que isso pode ter bagunçado algumas configurações de SSL, mas isso é um palpite!
Quaisquer pensamentos ou orientações gerais seriam muito apreciados!
Se for útil, aqui está meu ambiente:
- Versão Git: 1.9.4.msysgit.2
- Versão do Windows: Windows 8.1
Respostas:
Atualizar o TortoiseGit e o GCM não me ajudou, mas atualizar o Git sim, de acordo com o conselho de @Frederic nos comentários.
https://git-scm.com/download/win
Para garantir que a nova versão do Git seja instalada corretamente e não entre em conflito com as instalações anteriores (poderia, se você usasse o TortoiseGit, porque usaria pastas diferentes e bagunçaria a variável PATH), remova a instalação existente do Git antes de instalar o Git atualizado . Também pode ser necessário instalar com direitos de administrador.
fonte
Você provavelmente está enfrentando uma incompatibilidade com a suspensão do GitHub de protocolos de criptografia SSL fracos:
Aviso de remoção de padrões criptográficos fracos
A solução pode variar, mas para Windows você provavelmente precisará atualizar o gerenciador de credenciais Git para 1.14.0
https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0
fonte
Se você estiver usando o Android Studio ou IntelliJ IDEA, atualizar o Git para a versão mais recente e alterar o caminho para apontar para a nova versão resolve o problema para mim.
fonte
Usando TortoiseGit, fiz todas as outras correções / atualizações fornecidas para isso e ainda sem sucesso. Eu encontrei o seguinte: não consigo empurrar / puxar / buscar de repente
Minhas configurações do TortoiseGit para Git para Windows O caminho Git.exe estava apontando
C:\Program Files (x86)\Git\bin
. Mudei paraC:\Program Files\Git\bin
e agora está funcionando novamente.fonte
Check now
botão naGeneral
caixa de diálogo de configurações, com ox86
caminho que obtivegit version 1.9.5.msysgit.1
, depois de mudar paraC:\Program Files\Git\bin
Eu obtivegit version 2.16.2.windows.1
e com esse caminho tudo funciona bem.Isto é o que funcionou para mim.
fonte
Atualizar o Git não era suficiente na minha situação. Depois de depurar por várias horas, esta foi minha solução:
fonte
curl
ainda me dá a mensagem, o que me faz pensar se existe uma configuração como essa que vale para todos os aplicativos SSL, não apenasgit
...Eu tive o mesmo problema ao extrair código do GitHub em meu terminal de código do Visual Studio . Achei o conselho nas respostas anteriores útil e hackeei uma solução seguindo as etapas abaixo:
C:\Program Files (x86)\Git\bin.
paraC:\Program Files\Git\bin
.Este repositório foi bastante útil.
Espero que isso ajude alguém.
fonte
TL; DR:
git config --system http.sslbackend schannel
e desative as verificações de HTTPSgithub.com
em seu software antivírusEstou usando a linha de comando Git no Windows 8 x64. Além disso, meu software antivírus verifica o tráfego HTTPS por padrão. Como outras pessoas ao responder a essa pergunta, eu uso o GitHub quase diariamente.
Então comecei a brincar com a troca de back-end SSL:
git config --system http.sslbackend openssl ----------------vs------------------ git config --system http.sslbackend schannel
e o software antivírus verifica o tráfego SSL:error:0407006A:rsa routines:RSA_padding_check_PKCS1_type_1:block type is not 01
SSL certificate problem: unable to get local issuer certificate
schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
PS: Em vez da linha de comando, você pode simplesmente reinstalar o Git mais recente, selecionando "Usar biblioteca de validação SSL nativa do Windows".
PPS: O caso (3) parece ser um bug na biblioteca do schannel, porque o certificado MITM que meu software antivírus usa está na lista de permissões da minha máquina.
fonte
No macOS, você pode instalar o mais recente
git
viaHomebrew
.fonte
Homebrew
do zero - parece ser um problema22.error: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version while accessing https://github.com/Homebrew/brew/info/refs?service=git-upload-pack fatal: HTTP request failed
O mesmo para mim com Git 1.9.5.msysgit.1 também. Tentei instalar https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0 , mas nenhuma alteração.
Na verdade, nada acontece após a instalação; talvez eu esteja fazendo algo errado? (Isso pode não ajudar para a pergunta inicial, mas para outras pessoas, sim!)
fonte
C:\Program Files\Git\etc> cat install-options.txt Editor Option: Notepad++ Path Option: Cmd Plink Path: C:\Program Files (x86)\PuTTY\plink.exe SSH Option: Plink CURL Option: OpenSSL CRLF Option: CRLFAlways Bash Terminal Option: MinTTY Performance Tweaks FSCache: Enabled Use Credential Manager: Enabled Enable Symlinks: Disabled
Sim, encontrei o mesmo problema em uma solicitação de pull hoje e a solução foi simplesmente atualizar o Git baixando a versão mais recente (2.16.2) de 64 bits do Git para Windows. Foi lançado há 5 dias, em 20/02/2018.
fonte
O comentário de @andw funcionou para mim:
Atualize a versão 1.9.5 do Git para 2.15.1 usando estas etapas:
Em sourceTree, vá para o menu Ferramentas → Opções → Git → Usar Git incorporado .
fonte
Uma solução rápida seria git config --global http.sslVerify true , mas não é recomendado, pois invalida o propósito de usar SSL.
Uma segunda e melhor maneira é usar chaves ssh em vez de uma URL SSL.
Etapas para gerar chaves SSH
o Execute o seguinte comando em um terminal Git (Git Bash): ssh-keygen
Depois de executar o comando, a seguinte mensagem aparecerá:
Gerando par de chaves RSA públicas / privadas.
Insira o arquivo no qual salvar a chave (/h//.ssh/id_rsa):
Forneça o caminho para a chave a ser armazenada, por exemplo, insira o arquivo no qual deseja salvar a chave (/h//.ssh/id_rsa):
C:\Users\Public\my-new-ssh-key
Em seguida, forneça a senha para essa chave (qualquer senha de no mínimo 8 caracteres)
• Em seguida, execute o seguinte comando: eval “$ (ssh-agent –s)”
• Execute o seguinte comando:
ssh-add C:/Users/Public/my-new-ssh-key
Observação: use uma barra no caminho para a chave SSH recém-criada.Depois disso, adicione o conteúdo do arquivo my-new-ssh-key.pub e adicione-o na área de texto para Adicionar chave pública (Bitbucket, GitHub, etc.)
fonte
Ao me conectar a um repositório remoto para buscar, puxar, enviar etc., tive o mesmo erro:
Acabei de reinstalar o Git de 64 bits no lugar do de 32 bits e isso resolveu o problema.
Após a instalação, verifique o caminho Git nas variáveis de ambiente. Deveria ser:
fonte
Este é um problema com IntelliJ e RubyMine. O GitHub deve ter desabilitado SSL (conformidade com PCI, talvez?) Em favor do TLS. Se você abrir Configurações no IntelliJ ou RubyMine e navegar até Controle de versão> Git, verá que ele está usando um git.exe instalado no caminho do aplicativo. Você deve baixar a versão mais atual do Git e alterar o caminho nas configurações do VCS para apontar para isso, por exemplo, C: \ Arquivos de Programas \ Git \ bin \ git.exe se instalá-lo no Windows. Funciona como um encanto depois disso.
fonte
Às vezes, isso é causado por msysgit desatualizado que está usando SSL antigo e não é mais mantido, você pode instalar o git mais recente para Windows e apontar o caminho git.exe na configuração tartaruga para ele, então este problema desapareceu.
fonte
Encontrou um erro semelhante. No windows, git atualizado no windows para a versão mais recente. Isso resolveu o problema.
fonte
A atualização da versão Git funcionou para mim. Eu tinha a versão 1.9.5 e então atualizei para a 2.21.0 no windows. Atualizar também é muito fácil. Não precisamos desinstalar a versão anterior. Baixe o instalador Git mais recente e continue pressionando próximo usando as opções padrão e a versão será alterada para a nova versão e todas as configurações antigas ainda funcionarão como chaves ssh etc. Não precisamos gerar as chaves novamente e colocá-las github ou qualquer outro repositório.
Anteriormente, minha clonagem de protocolo https não estava funcionando e dando erro
Depois de baixar a nova versão e executar o mesmo comando clone, ele funcionou sem problemas.
fonte