Win10 Linux 하위 시스템을 통해 실행할 때 Github에서 계속 "인증 실패" 메시지가 나타나는 이유는 무엇입니까?

Win10 Linux 하위 시스템을 통해 실행할 때 Github에서 계속 "인증 실패" 메시지가 나타나는 이유는 무엇입니까?

저는 개발자 모드가 활성화되고 Linux 하위 시스템이 설치된 Windows 10을 실행하는 컴퓨터를 사용하고 있습니다. Bash로 전환할 때 git에서 간단한 복제 명령을 실행하려고 합니다.

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

물론 여기에서 URL을 약간 삭제했지만 아이디어를 얻으실 수 있습니다. 처음에 해당 명령에서 돌아온 응답은 다음과 같습니다.

치명적: '에 액세스할 수 없습니다.https://github.com/PrivateRepo/my-private-repo.git/': 서버 인증서 확인에 실패했습니다. CA 파일: /etc/ssl/certs/ca-certificates.crt CRL 파일: 없음

나는 그것에 대해 이야기하는 몇 가지 Stack Overflow 답변을 보았지만 솔직히 말해서 나는 잘 모르겠습니다.적절한그 오류를 처리하는 방법. 그렇다면 다음 명령을 실행하여 완전히 우회하는 부적절한 방법을 알고 있습니다.

git config --global http.sslverify false

그리고 그것은 효과가 있는 것 같습니다. 모든 SSL 확인을 끄는 것이 좋지 않을 수도 있지만 이 작업을 수행해야 하며 실제로 이 질문의 요점은 아닙니다. 하지만 여담으로, 내가 귀를 기울이고 있다는 것을 고치는 적절한 방법을 알고 있다면 말이죠.

다음으로 명령을 다시 실행했는데 git clone이번에는 사용자 이름과 비밀번호를 묻는 메시지가 표시되었지만 결국 다른 이유로 실패했습니다. 그 모습은 다음과 같습니다.

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'

그러나 제가 입력한 사용자 이름과 비밀번호가 정확했음을 확신할 수 있습니다. Windows용 Git도 설치되어 있는데, 설치해 보니 모든 것이 제대로 작동했습니다. 유일한 주의 사항은 명령줄에서 비밀번호를 입력하라는 메시지를 표시하는 대신 자격 증명을 입력할 수 있는 별도의 창을 열고 거기에서 6자리 2FA 코드도 입력하라는 것입니다. 그런 다음 잘 복제되었습니다. 그렇게 함으로써 Github에 개인 액세스 토큰이 생성된 것을 확인했습니다. 그래서 다른 개인 액세스 토큰을 생성하고 bash에서 수동으로 사용하려고 했습니다. 기본적으로 myuser내가 입력한 사용자 이름을 입력하는 대신myuser: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'

그러나 보시다시피 여전히 실패했습니다. Windows의 bash에서 git이 작동하도록 하려면 어떻게 해야 합니까?

답변1

git현재 실행 중인 Linux 배포판에서 설정하지 않은 구현을 사용하고 있습니다 . 대신 사용해 보세요 git.exe:

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

alias다음에서 명령을 수행할 수 있습니다 .bashrc.

alias git='git.exe'

답변2

사용자 이름만 사용한 다음 비밀번호 대신 액세스 토큰을 사용하면 됩니다. 토큰이 비밀번호를 대체하므로 비밀번호가 필요하지 않습니다.

관련 정보