윈도우 - Git Push에 Permission denied (publickey) 발생
Git에서 신규 레포지토리를 생성 후 아래 명령어로 입력했다.
mkdir CieData
cd CieData
git init
git add .
git commit -m "first My Commit"
git remote add origin git@github.com:kiioio/WavelengthMeansuredData.git
git branch -M master
git push -u origin master
그러나 다음과 같이 오류 메세지가 출력하였다.
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
publickey 으로 접근 시 권한이 이상하다는 메시지
윈도우에서 public key가 생성하지 못하였고 계속 비어있는 디렉토리의 키로 참조로 인한 원인이었다.
다음 powershell 에서 키를 생성한다. 윈도우 11에서는 별도의 설치 없이 바로 키를 생성해준다.
ssh-keygen
그러면 C:\Users\{UserName}\.ssh\. 디렉토리 아래의 id_ed25519, id_ed25519.pub 키가 생성될 것이다.
Github 홈페이지에서 자신의 레포를 찾아가 Settings > Deploy Keys 클릭하여 메뉴를 살펴보고 Add deploy key 버튼을 클릭해 제목과 생성한 id_ed25519.pub 내용을 채워준다.
그 다음 윈도우에서 ssh -T git@github.com 입력 시 환영한다는 메시지가 출력하면 성공적으로 push 또한 작동할 것이다.
PS C:\Users\clare\Downloads\CieData> ssh -T git@github.com
Hi kiioio/CieData! You've successfully authenticated, but GitHub does not provide shell access.
git push 명령어와 마찬가지로 동작한다.
PS C:\Users\clare\Downloads\CieData> git push -u origin master
Enumerating objects: 6, done.
Counting objects: 100% (6/6), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (6/6), 3.51 KiB | 1.17 MiB/s, done.
Total 6 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0)
remote:
remote: Create a pull request for 'master' on GitHub by visiting:
remote: https://github.com/kiioio/CieData/pull/new/master
remote:
To github.com:kiioio/CieData.git
* [new branch] master -> master
branch 'master' set up to track 'origin/master'.