문제상황
프로젝트 협업을 하며 브랜치에서 작업한 것들을 커밋 후 git push하였는데
The requested URL returned error: 403 이 떴다.
접근이 거부된다는 건데 상황은 이렇다.
이제까지 나는 ui가 주는 이점도 있고 하니 소스트리를 써왔다.
git bash를 안써버릇해서 잊어버릴 것 같아 이번 프로젝트에서는 최대한 git bash를 이용하고자 하였다.
두개 다 연결해놓고 작업 후 git bash를 이용하여 커밋 후 git push를 날렸는데 에러가 났다.
혹시나 해서 소스트리에서도 확인해보니 같은 에러가 떴다.
해결방법
열심히 구글링을 한 결과 권한 부여를 위해 github에서 토큰을 발급받아 인증을 해줘야했다.
여러차례 다양한 방법 시도 끝에 해결방법을 찾았다.
우선 github에서 토큰을 발급받아야 하는데 과정은 다음과 같다.
위의 경로로 들어가면 Token 값을 발급받을 수 있다.
창이 닫히면 다시 확인할 수 없으니
반드시 복붙 해놓자!!
그리고 토큰키의 권한을 어디까지 줄 것인지 체크해야되는데
User를 체크하지 않으면 나중에 git에서 로그인할 때 문제가 될 수도 있다고 한다.
그러니까 push나 pull만 할지라도 그냥 다 체크하는게 나은 것 같다.
토큰을 발급받은 후 아래 방법들을 시도해 보았다.
1. $ git remote set-url origin https://[username]@github.com/[username]/[repository-name].git으로 원격저장소 url을 push 하고자 하는 레포지토리의 주소로 변경한 후 push 한다. 그럼 다시 로그인 하게 되고 그때 password 값에 github에서 발급받은 토큰값을 복사해서 넣어준다. --------------------------- 실패!
2. 재로그인 시도 --------------------------- 실패!
3. 윈도우 자격 증명에서 github 키 변경 --------------------------- 성공!
윈도우의 자격 증명 관리자에서 git:https://github.com을 찾아 클릭하면
정보가 나오고 하단에 [편집/제거] 버튼이 뜬다.
편집을 누른 뒤
- 사용자 이름 : gitjub 사용자명
- password : Token key
위와 같이 세팅한 후
git push를 하면 성공이다!