본문 바로가기

개발/Git

Git Permission Denied(publickey).

이 오류를 알기 위해선 ssh-key원리를 알아야 합니다. 

ssh-key는 서버에 접속할 때 비밀번호 대신 key로 제출하는 방식을 말합니다.

 

git으로 다시 설명드리면, public key를 서버측(git)에 등록시키고 로컬에서 가진 private key로 매칭하여 비밀번호 대신 key방식으로 로그인을 수행하는 것이다 이렇게 이해하시면 좋습니다 :0 ) 

 

자 그렇기 때문에 위의 오류는 git/bitbucket에 있는 public key가 내 로컬의 private key와 매칭이 안된다 ! 는 이슈이므로 key를 발행하여 public key를 서버(git/bitbucket)에 등록시켜 줄 것입니다.

 

우선 현재 계정으로 누구로 설정되어 있는지 확인합니다. 

 

git config --list

 

현재 계정을 변경해줍니다.

 git config --global user.email "{계정 이메일}"
 git config --global user.name "{계정 이름}"

계정이 변경되었는지 확인 해주세요!

 

 

ssh-keygen을 통해 key를 발행해줍니다. 

 

  ssh-keygen -t rsa -C "{계정 이메일}"

 

그리고 덮어씌울 것이냐는 물음에 y, 이후 물음에는 엔터를 눌러 점프해주세요 ! 

 

생성된 public key를 복사합니다. 

 

cat ~/.ssh/id_rsa.pub | pbcopy .

bitbucket기준으로 말씀드리면 개인 계정에 접근하여 ssh keys 탭으로 가시면 됩니다 !  

이후 addKey 버튼을 눌러 복사한 public key를 붙여 넣습니다.

label(title)은 본인이 이 key가 어디 기기에서 발행된 건지 확인하는 용도이므로 잘 설정해주시면 됩니다. 

그리고 git pull 을 통해 소스가 잘 당겨와지는지 확인하시면 됩니다 ! 

'개발 > Git' 카테고리의 다른 글

[Git] GitLab-jenkins webhook  (0) 2020.01.19
[Git] Git 명령어  (0) 2020.01.19