본문 바로가기

app/git

Permission denied (publickey). git push error

ubuntu에서 github 에 push 를 하려 했더니 권한이 없다고 에러가 납니다.

해당 문제는 유저의 ssh 가 등록되지 않아 github의 접근 권한이 없어서 나오는 문제입니다.  

이제 요놈을 어떻게 하면 되는지 보겠습니다.(쫌 깁니다.)


1. 만일 ssh-keygen 이 생성되지 않았다면 생성해줘야 합니다. (만일 기존에 생성되어있다면 3번부터 해주시면 됩니다.)

ssh-keygen -t rsa -C "이메일"


2. 생성한 ssh 키는 /home/유저/.ssh/id_rsa 에 생성되었습니다.


3. 먼저 해당 폴더로 이동후 ssh 키를 복사해줘야 합니다.

cat /home/유저/.ssh/id_rsa.pub

커맨드창에 나오는 긴 문자열을 복사해줍니다. 


4. github의 소스를 올리려 했던 저장소에 들어가 보면 오른쪽에 settings 메뉴가 있습니다. 클릭.


5. 메뉴중 Deploy keys 를 클릭. Add deploy key 를 클릭하면 아래의 화면과 같이 나옵니다. 

아까 복사했던 ssh 키를 넣어주고 타이틀은 적당히 아무거나 넣어주고 Add Key를 눌러줍니다. 


6. ssh키의 비번을 넣어줍니다. 


7. 해당 키가 생성되었습니다. 


8. 다시 커맨드차에서 잘 등록이 되었는지 테스트 합니다. Hi 유저/레파지토리 가 정상적으로 나오면 잘되는겁니다. 

ssh -T git@github.com


9. 이제 push 를 해보시면 정상적으로 올라갑니다.