TIL::Today I Learn

GitHub push 시 매번 암호(Token) 요구하는 현상 해결하기

madylin 2024. 5. 12. 19:57
반응형
i@i-ui-MacBookAir nebtoon % git push
Username for '<https://github.com>': name
Password for '<https://i@github.com>':

새로운 프로젝트를 위해 GitHub에서 레포지토리를 클론한 후, push 시 마다 인증을 요구했습니다.

private 레포지토리여도 매번 요구하지는 않았던 것 같아 검색해보았는데, HTTPS URL을 통해 클론된 레포지토리이기 때문에 인증을 요구한다라는 내용을 찾을 수 있었습니다.

 

Git에서 항상 암호를 묻는 메시지를 표시하는 이유는 무엇인가요? - GitHub Docs

 

Git에서 항상 암호를 묻는 메시지를 표시하는 이유는 무엇인가요? - GitHub Docs

GitHub와 상호 작용하려고 할 때마다 Git에서 사용자 이름 및 암호를 묻는 메시지가 표시되면 리포지토리에 HTTPS 복제 URL을 사용 중일 것입니다.

docs.github.com

 

안내된 내용대로, 자격 증명을 캐싱하여 앞으로는 인증을 요구하지 않도록 조치해보았습니다.

자격 증명 방법에는 GitHub CLIGit Credential Manager 가 있으며, Git Credential Manager 방법이 더 간단해보여 이번에는 이 방법을 사용하였습니다.

 

Git Credential Manager 방법

GCM(Git Credential Manager )은 자격 증명을 안전하게 저장하고 HTTPS를 통해 GitHub에 연결하는 또 다른 방법입니다. GCM을 사용하면 GCM이 2FA(2단계 인증)를 비롯한 인증을 사용자 대신 관리하므로 수동으로 personal access token을(를) 만들고 저장할 필요가 없습니다.

1. Homebrew를 사용하여 Git을 설치

brew install git

이미 설치되어 있는 경우 다음 단계로 넘어갑니다.

2. Homebrew를 사용하여 GCM을 설치

brew install --cask git-credential-manager

위 내용으로 GCM이 설치되면, 아래와 같이 GitHub 로그인 창이 뜨게 됩니다.

편한 방식으로 로그인 하시면 될 것 같고, 저의 경우에는 browser를 통해 로그인을 하였습니다.

 

로그인이 완료되면, 아래처럼 인증이 성공하였다는 창이 뜨고 설정이 완료됩니다.

이후 다시 push를 해보면 인증을 요구하지 않고 바로 push가 되는 것을 확인할 수 있습니다.

i@i-ui-MacBookAir nebtoon % git push
Everything up-to-date

 

 

 

출처

 

반응형