Data Navigator

github push 할 때 access denied가 나올 때 해결방법 windows 본문

git_github

github push 할 때 access denied가 나올 때 해결방법 windows

코딩하고분석하는돌스 2024. 3. 6. 17:31

windows 환경에서 github에 push 할 때 access denied 에러가 나올 때 해결방법

 

 

 

 

1. 본인의 컴퓨터에서 작업 할 때

1) ssh 키 등록을 하지 않아서 생긴 문제일 경우

   1. window키 + r을 눌러 cmd를 입력해 commend prompt 터미널을 엽니다.

   2. ssh키를 생성 후 gitub에 등록합니다.

   3. SSH 키 생성: 먼저 SSH 키를 생성해야 합니다. 이는 ssh-keygen -t rsa -C "your_email@example.com" 명령을 실행하여 수행할 수 있습니다. 이 명령은 RSA 암호화를 사용하는 SSH 키를 생성하며, 이메일 주소는 키의 식별자로 사용됩니다.

 ssh-keygen -t rsa -C "your_email@example.com"

  4. SSH 키 복사: 생성된 키는 C:\Users\<윈도우 계정명>\.ssh\id_rsa.pub 파일에 저장됩니다. 이 키를 복사해야 합니다.

  5. 메모장이나 vscode 같은 편집기로 id_rsa.pub 파일을 열고 안에 있는 내용을 복사합니다.

  6. SSH 키 등록: 복사한 키를 GitHub 계정에 등록해야 합니다. 이는 GitHub에 로그인한 후, 설정(Settings)으로 이동하여 SSH 키를 등록하는 방법으로 수행할 수 있습니다.

  7. GitHub에 로그인한 후, 설정(Settings) => SSH and GPG keys => New SSH key 

 

  8. title에 제목을 적고 key 부분에 id_rsa.pub 에서 복사한 내용을 붙여 넣고 Add SSH key 클릭해 등록합니다.

 

  9. SSH 키 확인: 마지막으로, SSH 키가 제대로 등록되었는지 확인해야 합니다.

ssh -T git@github.com

이 명령을 실행하면, "Hi username! You’ve successfully authenticated, but GitHub does not provide shell access."라는 메시지가 출력되어야 합니다.

 

2. 타인의 컴퓨터에서 작업 할 때

작업을 하다보면 내 컴퓨터에서 작업 하는 것이 아니라 타인의 컴퓨터에서 내 깃허브의 repository에 연결해 push를 해야 할 때가 있다.

이 때는 git config user.name, git config user.email , git remove add "git reposity link"를 등록해도 permission denied 가 뜬다.

push를 했을 때 내가 등록한 user.name과 다른 이름이 나오면서 permission denied가 뜨면 windows 자격증명 관리자를 확인하자.

1. 검색에서 제어판 검색

 

2. 사용자 계정 클릭

 

3. windows 자격 증명 관리 클릭

 

4. git:https://github.com 을 찾아 편집 클릭

  github의 사용자 이름과 비밀번호를 입력하고 저장

 

5. push할 디렉토리로 돌아가서 다시 git push -u orgin main 실행 후 결과 확인

 

이렇게 하면 타인의 컴퓨터에서 본인의 github repository로 push 할 수 있다.

 

push를 하고 난 후에는 windows 자격증명부터 역순으로 되돌리자.

 

사실 타인의 컴퓨터에서 내 github로 push하는 것은 좋은 방법이 아니다.

타인의 컴퓨터에 연결된 github 계정과 repositoy로 push하고 주소를 공유받아 pork 해오자.