fatal: 'upstream' does not appear to be a git repository

모찌모찌·2024년 2월 8일

오류해결

목록 보기
1/2
post-thumbnail

코드잇에서 part1을 끝내고 part2를 새로 시작하고 메인 브런치를 part2로 바꿔야했다.
처음에 로컬로 가져올때 main브랜치를 가져오지않아서 main브랜치를 가져와야했다.

git fetch upstream main

를 치니까 오류가 떴다...

git fetch upstream main 명령어를 실행할 때 'upstream'이라는 원격 저장소를 찾지 못한다는 오류가 발생한것이다.
이 오류는 'upstream'이라는 이름의 원격 저장소가 현재의 Git 작업 디렉토리에 설정되어 있지 않기 때문에 발생한다.

해결방법

  1. 원격 저장소 설정 확인: 'upstream'이라는 이름의 원격 저장소가 현재의 Git 작업 디렉토리에 설정되어 있는지 확인하기.
git remote -v

이 명령어를 실행하면 현재 설정된 모든 원격 저장소의 이름과 URL이 표시됩니다. 'upstream'이라는 이름의 원격 저장소가 없다면 설정해야 합니다.

  1. 원격 저장소 추가: 'upstream'이라는 이름으로 원격 저장소를 추가해야 합니다. 다음 명령어를 사용하여 'upstream'이라는 이름으로 원격 저장소를 추가할 수 있습니다.
git remote add upstream <원격 저장소 URL>

<원격 저장소 URL> 부분에는 실제 원격 저장소의 URL을 입력해야 합니다.


확인결과 upstream 저장소가 없어서 해결방법 대로 추가한다음 다시 git fetch upstream main 명령어를 쳐주면!
짜짠! upstream/main 브랜치가 생겼다.

git checkout -t upstream/main 

위사진에서 이코드는 로컬에서 main 브랜치를 생성후 스위치하는 코드이다.

  1. upstream/main 브랜치로부터 로컬main 브랜치가 생성됩니다.
  2. 생성된 main 브랜치로 스위치됩니다.

👀 이때 드는 의문점 checkout -t 와 checkout -b 의 차이가 머지?

git checkout 명령어의 -b 옵션과 -t 옵션의 차이

1. -b 옵션:

git checkout -b <브랜치이름> 명령어새로운 브랜치를 만들고 해당 브랜치로 스위치하는 명령어입니다.
이 옵션을 사용하여 새로운 브랜치를 만들고자 할 때 사용합니다.

예를 들어, git checkout -b new-branch 명령어를 사용하면 new-branch라는 이름의 새로운 브랜치가 만들어지고, 해당 브랜치로 스위치됩니다.

2. -t 옵션:

git checkout -t <원격브랜치> 명령어원격 저장소의 트래킹 브랜치를 로컬로 가져와서 해당 브랜치로 스위치하는 명령어입니다.

예를 들어, git checkout -t origin/main 명령어를 사용하면 원격 저장소의 main 브랜치를 로컬로 가져와서 해당 브랜치로 스위치됩니다.

따라서 -b 옵션은 새로운 브랜치를 만들 때 사용되고, -t 옵션은 원격 저장소의 트래킹 브랜치를 가져올 때 사용됩니다.

profile
꼬꼬마 개발자 지망생

0개의 댓글