Direct Answer & TL;DR
- 에러 원인: 맥북 키체인에 이전 계정의 인증 정보가 남아있어서, Git이 새로운 계정 정보를 물어보지 않고 기존 정보를 계속 쓰기 때문이다.
- 해결 방법:
git credential-osxkeychain erase명령어로 키체인에 저장된 잘못된 데이터를 제거하면 해결된다. - 확인 방법:
git remote -v로 도메인을 확인한 뒤,get명령어로 키체인 내부를 들여다보면 어디서 정보가 꼬였는지 명확히 알 수 있다.
브라우저에서 레포지토리 URL로 접속하면 코드가 멀쩡히 보이는데, 터미널에서 git clone이나 git pull만 하면 **‘Repository Not Found’**라는 메시지가 떠서 당황한 적이 많다. 주로 맥북 사용자 계정을 변경하거나, 새로운 Git 계정으로 작업을 시작할 때 이런 상황을 겪는다.
fatal: repository 'https://gitlab.test.com/project/code.git/' not found
잘 있던 레포지토리가 갑자기 터미널에서만 ‘실종’된 원인을 찾아보니, Git 서버가 보안을 위해 인증 실패 시 “권한 없음” 대신 “찾을 수 없음(Not Found)” 메시지를 반환하기 때문이었다.
결국 문제는 내 맥북이 **낡거나 잘못된 인증 정보(Credential)**를 고집스럽게 쓰면서, 나에게 새로운 계정을 입력할 기회조차 주지 않는다는 점이었다. 이걸 어떻게 확인하고 해결했는지 정리했다.
원인 파악: 어떤 정보가 꼬여있었나?
먼저 내 Git이 참조하는 원격 저장소와 키체인 정보부터 대조해봤다.
우선 도메인(Host) 주소부터 확인했다
키체인을 조회하려면 먼저 문제가 된 저장소의 도메인 주소가 필요하다. git remote -v 명령어로 전체 주소에서 도메인(예: github.com 혹은 gitlab.test.com)만 따로 확인했다.
git remote -v
키체인에 저장된 실제 인증 정보 조회
위의 도메인 정보를 넣어 아래 명령어를 실행해보니, 맥북 키체인이 들고 있는 ‘이전 사용자 아이디’가 그대로 출력되었다.
printf "protocol=https\nhost=gitlab.test.com\n" | git credential-osxkeychain get
만약 아래처럼 이전 계정 아이디가 나온다면 정확히 찾은 것이다.
username=이전사용자아이디
password=저장된비밀번호_또는_토큰값
해결 과정: 잘못된 키체인 정보 제거
범인을 찾았으니, 해당 정보를 비워주는 방식으로 해결했다.
키체인 데이터 지우기 (Clean Up)
다음 명령어를 실행해서 문제의 도메인 정보를 맥북 키체인에서 강제로 제거했다.
printf "protocol=https\nhost=gitlab.test.com\n" | git credential-osxkeychain erase
[!IMPORTANT] 명령 실행 후 아무런 메시지도 뜨지 않는다면 성공이다. 키체인이 깨끗하게 비워졌다는 뜻이다.
새 계정으로 다시 로그인 (Re-authenticate)
다시 git pull이나 git clone을 시도하니, 드디어 기다리던 사용자 입력창이 떴다.
새로운 로그인 정보를 입력하니 명령어가 정상적으로 실행됐다. 입력한 정보는 다시 키체인에 안전하게 자동 저장된다.
[!TIP] 참고: 비밀번호 대신 토큰을 사용했다 요즘 GitHub나 GitLab은 보안상 실제 비밀번호 대신 Personal Access Token(PAT) 사용을 의무화하는 경우가 많다. 나도 재인증 시
password칸에 실제 계정 비밀번호가 아닌 생성한 토큰값을 넣어서 해결했다.
💡 효율적인 트러블슈팅 요약
| 단계 | 작업 내용 | 관련 명령어 |
|---|---|---|
| 1. 확인 | 키체인 내 오염된 데이터 조회 | ... get |
| 2. 삭제 | 잘못된 인증 정보 즉시 제거 | ... erase |
| 3. 재인증 | 새 계정 정보(PAT 등) 입력 | git pull / clone |
현재 설정 한눈에 확인하기
git config --list --show-origin
이 명령어는 각 설정값이 **어떤 파일(System/Global/Local)**에서 오는지 보여주므로, 설정이 꼬인 위치를 파악할 때 유용하다.
키체인부터 의심하자
맥북에서 겪는 Git 인증 에러는 대개 ‘설정 파일’보다 키체인 속에 숨어있는 **‘낡은 데이터’**에서 비롯되는 경우가 많다. 나도 1시간 넘게 헤맨 끝에야 이 사실을 알았다. 명령어를 복붙하기보다 get과 erase로 데이터를 직접 들여다보니 macOS 키체인이 돌아가는 방식이 좀 더 이해됐다.
‘Repository Not Found’ 메시지를 만났다면, 복잡한 설정을 건드리기 전에 키체인 데이터부터 확인해본다.
🔗 References
- [Git 공식 문서] git-config - 설정 범위 상세 설명
- [Git 공식 문서] gitcredentials - Credential 시스템 개요