본문으로 바로가기

[Git] 소스트리 Access denied 오류 해결

category Program/Git 2020. 7. 25. 19:33

소스트리(Sourcetree)를 이용하여 GitLab,GitHub 등의 저장소에서 Clone 받아 놓은 원격 레파지토리(remote Repository)에 PULL / PUSH 등으로 접근할때 아래와 같이 권한 오류로 실패하는 경우가 있습니다.
remote: HTTP Basic: Access denied
fatal: Authentication failed for https://gitlab.com/{{project}}
원인은 저같은 경우 다른 IDE를 사용하다 git gloabl config 계정정보를 건드렸는데 해당 정보와 소스트리에서 최초 git clone 받았던 당시 소스트리에 저장된 계정 정보와 달라서 발생했던 문제였습니다.

콘솔에서 사용할 경우 git config --system --unset credential.helper을 통해 저장 초기화 해준 뒤 다시 접근하면 계정정보를 재 입력하여 해결할 수 있으나 Sourcetree에서는 최초 저장된 계정정보 파일을 수동으로 삭제한 뒤 다시 갱신해서 해결할 수 있습니다.

1. 먼저 소스트리를 종료하고 계정정보를 저장하는 소스트리 설정 폴더로 들어가 주세요. 경로는 윈도우, 맥 OS 각각 아래와 같습니다.
* Windows
~\AppData\Local\Atlassian\SourceTree\userhost
~\AppData\Local\Atlassian\SourceTree\passwd

* Mac OS
~/Library/Application Support/SourceTree 

2. 폴더 내 hostusernamemap파일에는 각 호스트별로 저장된 계정정보가 저장되어 있고 {계정}@STAuth-gitlab.xxx.com 파일은 해당 원격 저장소 계정에 대한 패스워드 정보가 들어있습니다. 접속정보를 갱신하기 위해  위 두 파일을 삭제해 주세요


3. 이후 소스트리를 실행한 뒤 원격 저장소에 접근해 보면 Authentication Required 팝업창이 뜨고, 이때 다시 계정정보를 입력해 주면 원격저장소에 권한 오류없이 접근 할 수 있습니다.