본문 바로가기
기타

GitHub 403 에러 (Permission denied) 해결 방법

by hong7 2025. 4. 4.

팀 프로젝트를 위해 클론 받아온 레포지토리에 git push를 하려 했는데,

아래와 같은 403 에러가 발생했습니다.

 

이 문제는 HTTPS 인증 문제 때문입니다.

GitHub은 보안 강화를 위해 패스워드 대신 Personal Access Token(PAT)을 사용하도록 변경했는데,

HTTPS 방식으로 push하려고 하면 인증이 제대로 되지 않아 발생하는 오류입니다.

✅ 해결 방법: SSH 방식으로 변경

HTTPS가 아닌 SSH 방식을 사용하면 인증 문제 없이 push할 수 있습니다.

다음 명령어를 실행해서 GitHub 원격 저장소(remote) URL을 SSH 방식으로 변경하세요.

git remote set-url origin git@github.com:[프로젝트주소].git

 

 

이제 다시 git push를 실행하면 정상적으로 동작합니다.


🔍 기존 상태: HTTPS 방식

origin <https://github.com/example-org/example-repo.git>
  • HTTPS 방식은 GitHub에 push할 때 매번 사용자 인증이 필요합니다.
  • 요즘은 GitHub에서 패스워드 로그인 대신 Personal Access Token (PAT)을 사용해야 합니다.
  • PAT 설정이 없거나, 권한이 부족하면 403 에러가 발생할 수 있습니다.

🔄 바꾼 상태: SSH 방식

origin git@github.com:example-repo.git
  • SSH 키 인증을 사용하면 비밀번호 입력 없이 자동 로그인됩니다.
  • 한 번 설정해두면 추가 인증 없이 push가 가능합니다.
  • 권한이 있는 경우 바로 push할 수 있습니다.

🔧 git remote set-url 이란?

git remote set-url origin [프로젝트주소]

이 명령어는 원격 저장소(remote)의 주소를 변경하는 역할을 합니다.

  • 기존 https://... → git@github.com:... 으로 프로토콜을 변경한 것입니다.
  • SSH 방식으로 변경하면 GitHub에 자동으로 인증됩니다.

만약 SSH 키를 등록하지 않았다면, SSH 키를 생성하고 GitHub에 등록하세요.

 

 

 

 

'기타' 카테고리의 다른 글

Git 잔디가 안심어짐  (0) 2024.08.16