Featured image of post [Git] 맥북 계정 변경 후 'Repository Not Found' 해결 방법 (osxkeychain)

[Git] 맥북 계정 변경 후 'Repository Not Found' 해결 방법 (osxkeychain)

맥북에서 Git 계정을 변경했는데 Repository Not Found 에러가 발생했습니다. 키체인에 저장된 기존 인증 정보를 제거하여 문제를 해결하는 과정을 정리했습니다.

Direct Answer & TL;DR

  1. 에러 원인: 맥북 키체인에 이전 계정의 인증 정보가 남아있어서, Git이 새로운 계정 정보를 물어보지 않고 기존 정보를 계속 쓰기 때문이다.
  2. 해결 방법: git credential-osxkeychain erase 명령어로 키체인에 저장된 잘못된 데이터를 제거하면 해결된다.
  3. 확인 방법: 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시간 넘게 헤맨 끝에야 이 사실을 알았다. 명령어를 복붙하기보다 geterase로 데이터를 직접 들여다보니 macOS 키체인이 돌아가는 방식이 좀 더 이해됐다.

‘Repository Not Found’ 메시지를 만났다면, 복잡한 설정을 건드리기 전에 키체인 데이터부터 확인해본다.


🔗 References

  • [Git 공식 문서] git-config - 설정 범위 상세 설명
  • [Git 공식 문서] gitcredentials - Credential 시스템 개요
Experience · Understanding · Insight · 문의하기