윈도우 - 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'.