티스토리 뷰

Git

[Git] password authentication 에러

CharlieZip 2021. 8. 14. 23:09
반응형

갑자기 git push를 하는데

위와같은 Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. 에러가 발생하면서 push가 되질 않았다.

 

git이 알려주는 https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/  링크를 들어가보니 더이상 password 인증은 허용하지 않고 token을 통한 인증을 사용하라는 것이었다.

 

이걸 해결하기 위해 많이 찾아보았는데 해결 방법을 공유하겠습니다.

참고로, 저는 Window환경에서 작업했으니 Mac에서 하시는 분들은 참고만 하시면 좋을거 같습니다.

 

[ Token 생성 ]

먼저 token 인증을 하기 위해서는 personal access token 을 만들어야 합니다.

github에 들어가 Setting에 들어갑니다.

 

 

Developer settings 로 들어가 줍니다.

 

Personal access tokens 메뉴로 들어가면 저는 이미 토큰이 생성되어 있지만, 하나도 없으신 분도 있으실 겁니다.

이미 있으신분들은 기존에 있는걸 사용하셔도 가능하지만, 토큰 Key를 까먹으셨다면 새로 생성하시는걸 추천드립니다. Generate new token을 눌러 토큰을 새로 생성해 줍니다.

 

 

github 비밀번호를 입력해서 들어오면 위와같은 화면이 뜨게 됩니다.

 

Note - Token의 이름을 정해줍니다. 저는 "CodePush"라 하겠습니다.

Expiration - 토큰 유효기간을 설정해줍니다. 개인의 사용목적에 맞게 설정하시면 됩니다.

Select scopes - 토큰 접근 범위를 설정해줍니다. 기본적인 레포지토리 관리를 사용하실거라면 repo, read:org, gist 는 체크해주시는것이 좋습니다. 나머지는 사용목적에 맞게 체크하여 사용하시면 되고 좀 더 자세한 정보가 궁금하신 분들은 여기에서 정보를 찾아 보시면 도움을 얻을 수 있을거 같습니다.

 

마지막으로 Generate Token을 하시면 토큰이 생성됩니다. 빨간 네모 부분이 토큰 키 입니다.

토큰키는 생성한 직후인 지금 화면에서만 확인하실수 있고, 이후로는 볼 수 없기 때문에
지금 다른 안전한 곳에 저장해 두시길 추천드립니다. 나중에 필요하니 꼭 까먹지 말고 저장해 두세요!

 

 

[ 임시 해결 방법 ]

이제 토큰을 생성했습니다. 그리고 다시 아까 오류화면으로 돌아가 보겠습니다.

 

위의 오류가 발생했고, 토큰을 생성했다면 현재 연결되어 있는 원격 저장소를 삭제 한뒤, 다시 토큰 인증 방식으로 저장소를 연결하면 됩니다.

$ git remote remove origin
$ git remote add origin https://<USERNAME>:<TOKEN>@<GIT_URL>.git
$ git pull

 

만약 git pull을 하는데 아래와 같은 메시지가 발생한다면

 

$ git branch --set-upstream-to=origin/master master

이와 같이 해결하면 됩니다.

 

만약 저장소를 토큰 인증을 통해 복제할거라면

$ git clone https://<USERNAME>:<TOKEN>@<GIT_URL>.git

위 방식을 사용하면 됩니다.

 

[ 자격 증명 수정 ]

근데 위의 방법을 사용하면 모든 레포지토리를 각각 변경해 줘야 합니다.

그건 너무 귀찮은 일이기 때문에 인증 정보를 캐시하는 방법이 있습니다.

macOS 나 Linux는 crediential Cache를 사용해 문제를 해결 할 수 있습니다. 

 

(macOS 나 Linux 분들은 여기에서 crediential 부분을 참고해보세요!)

 

저는 Window 환경에서 해결 방법을 알려 드리겠습니다.

먼저 설정에서 자격 증명 관리자로 들어갑니다.

 

Windows 자격 증명을 선택하고 일반 자격 증명 에서 git 자격 증명을 찾습니다.

편집을 눌러 들어갑니다.

 

암호를 우리가 생성한 Token으로 변경해 줍니다.

 

그러면 기존과 같이 git push가 정상 작동하는 것을 확인 할 수 있을겁니다.

 

추가로, Token 인증대신 SSH를 이용하셔도 됩니다.

 

도움이 되셨으면 좋겠습니다. 좋은 하루 되세요!!

 

반응형

'Git' 카테고리의 다른 글

[Git] Git merge 방법  (0) 2021.08.09
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함