Por que continuo recebendo "Falha na autenticação" no Github ao executar o subsistema Win10 Linux?

Por que continuo recebendo "Falha na autenticação" no Github ao executar o subsistema Win10 Linux?

Estou em uma máquina rodando Windows 10, com o Modo Desenvolvedor habilitado e o Subsistema Linux instalado. Quando mudo para o bash, estou tentando executar um comando clone simples do git:

git clone https://github.com/PrivateRepo/my-private-repo.git

É claro que limpei um pouco o URL aqui, mas você entendeu. Inicialmente, a resposta que recebi desse comando foi esta:

fatal: incapaz de acessar 'https://github.com/PrivateRepo/my-private-repo.git/': falha na verificação do certificado do servidor. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: nenhum

Eu vi algumas respostas do Stack Overflow falando sobre isso, mas para ser honesto, eu realmente não sei oapropriadomaneira de lidar com esse erro. Dito isso, conheço uma maneira imprópria que é simplesmente contorná-lo completamente, executando o seguinte comando:

git config --global http.sslverify false

E isso parece funcionar. Provavelmente é ruim que eu esteja desativando toda a verificação SSL, mas preciso fazer isso funcionar, e esse não é realmente o objetivo desta pergunta (que estou abordando). Mas, como um aparte, se você souber a maneira correta de consertar isso, sou todo ouvidos.

Em seguida, executei novamente meu git clonecomando e, desta vez, ele solicitou um nome de usuário e uma senha, mas acabou falhando por um motivo diferente. Aqui está o que parecia:

git clone https://github.com/PrivateRepo/my-private-repo.git
Cloning into 'my-private-repo'...
Username for 'https://github.com': myuser
Password for 'https://[email protected]': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/PrivateRepo/my-private-repo.git'

Porém, posso garantir que o nome de usuário que digitei estava correto, assim como a senha. Também tenho o Git para Windows instalado e quando tentei tudo funcionou. A única ressalva foi que, em vez de solicitar uma senha na linha de comando, ele abriu uma janela separada para inserir as credenciais e também solicitou meu código 2FA de seis dígitos. Então ele clonou perfeitamente. Percebi que ao fazer isso ele criou um token de acesso pessoal no Github. Então fui em frente e criei outro token de acesso pessoal e tentei usá-lo manualmente no bash. Basicamente, em vez de digitar myusero nome de usuário, digiteimyuser:mytoken

git clone https://github.com/PrivateRepo/my-private-repo.git
Cloning into 'my-private-repo'...
Username for 'https://github.com': myuser:a1abcdefab2a34567ab8901a2bc3d4567890a1b2
Password for 'https://myuser:[email protected]': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/PrivateRepo/my-private-repo.git'

Mas como você pode ver, ainda falhou. Como faço para que o git funcione no bash no Windows?

Responder1

Você está usando a implementação de gitem sua distribuição Linux atualmente em execução, que provavelmente não configurou. tente usar git.exeem vez disso:

git.exe clone https://github.com/PrivateRepo/my-private-repo.git

Você pode aliaso comando em seu .bashrc:

alias git='git.exe'

Responder2

Você precisa apenas usar seu nome de usuário e, em vez de sua senha, usar seu token de acesso. Você não precisa da sua senha, pois o token a substitui.

informação relacionada