답변:
사용자 이름 과 비밀번호 를 요청하는 경우 오리진 원격은 SSH URL이 아닌 HTTPS URL을 가리 킵니다.
ssh로 변경하십시오.
예를 들어 Git과 같은 GitHub 프로젝트에는 HTTPS URL이 있습니다.
https://github.com/<Username>/<Project>.git
그리고 SSH 하나 :
git@github.com:<Username>/<Project>.git
넌 할 수있어:
git remote set-url origin git@github.com:<Username>/<Project>.git
URL을 변경합니다.
git remote set-url origin $(git remote show origin | grep "Fetch URL" | sed 's/ *Fetch URL: //' | sed 's/https:\/\/github.com\//git@github.com:/')
실제로 SSH URL을 사용하고 있지만 git push 할 때 여전히 사용자 이름과 비밀번호를 묻는 경우 :
git remote set-url origin git@github.com:<Username>/<Project>.git
다음을 사용하여 문제 해결을 시도해야합니다.
ssh -vT git@github.com
다음은 샘플 출력입니다.
...
debug1: Trying private key: /c/Users/Yuci/.ssh/id_rsa
debug1: Trying private key: /c/Users/Yuci/.ssh/id_dsa
debug1: Trying private key: /c/Users/Yuci/.ssh/id_ecdsa
debug1: Trying private key: /c/Users/Yuci/.ssh/id_ed25519
debug1: No more authentication methods to try.
Permission denied (publickey).
실제로 GitHub에 공개 키를 이미 추가했으며 로컬에도 개인 키가 있습니다. 그러나 내 개인 키의 이름은이라고 /c/Users/Yuci/.ssh/github_rsa
합니다.
샘플 출력에 따르면 Git은 시도하고 /c/Users/Yuci/.ssh/id_rsa
있습니다. 따라서, 단순히 복사 할 수 있습니다 github_rsa
에 id_rsa
같은 디렉토리에.
cp /c/Users/Yuci/.ssh/github_rsa /c/Users/Yuci/.ssh/id_rsa
이제 ssh -vT git@github.com
다시 달리면 다음과 같은 결과가 나타납니다.
...
debug1: Trying private key: /c/Users/Yuci/.ssh/id_rsa
debug1: Authentication succeeded (publickey).
...
Hi <my username>! You've successfully authenticated, but GitHub does not provide shell access.
...
그리고 이제 사용자 이름과 비밀번호를 요구하지 않고 GitHub에 푸시 할 수 있습니다 :-)
HTTPS가 아닌 SSH 버전 을 사용해야합니다 . 당신이 저장소에서 복제 할 때와 링크를 복사 SSH의 SSH 사용하기 쉬운 및 액세스로 해결할 수있는 모든 문제 때문에, 버전. 계정에 입력 한 모든 SSH (예 : 푸시, 풀, 복제 등)에 대한 액세스 권한을 설정할 수 있습니다.
여기에 SSH가 필요한 이유와 사용법을 알려주는 링크가 있습니다.
명령 행 사용 :
ls -al ~/.ssh
기존 SSH 키가 있는지 확인하려면 입력 하십시오.
터미널에 다음이 표시됩니다. 디렉토리가 없습니다
그런 다음 새 SSH 키를 생성하십시오.
1 단계.
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
2 단계.
Enter a file in which to save the key (/Users/you/.ssh/id_rsa): <here is file name and enter the key>
3 단계.
Enter passphrase (empty for no passphrase): [Type a password]
Enter same passphrase again: [Type password again]
https://github...
리모컨을 사용 하고 있지 않은지 확인하십시오 . 또한git@github...
형식을 따라야 합니다.