소록소록 Day 7_git 새로운 branch 만들기 오류 > 해결

박다영·2022년 11월 26일
0

project

목록 보기
12/70

vscode terminal 에서 명령어를 사용해
기존에 작업해둔 branch 2개 (dy, ty)의 내용을 합친
새로운 branch 를 만들고자 했다.



오류발견

그런데 새로운 branch를 만드려고 하니,

did not match any file(s) known to git

라는 오류가 뜨면서 생성되지 않았다.



첫 번째 시도

알고보니 터미널 명령어가 잘못 된 것이었다.
이미 있는 branch에 checkout 할 때는 git checkout [가고자하는 branch 명]을 써야하지만,
없는 branch 를 새로 만들때는 git checkout -b [만들고자 하는 branch 명] 를 써야했다.
(위의 방법처럼 vscode 내부 터미널에서 branch를 만들면 내가 작업하고 있던
이전 branch의 내용을 그대로 새로운 branch에 넣어서 만들어준다.)



두 번째 시도

그랬는데도 잘 안돼서 일단 원격 저장소의 변경사항을 최신화하기 위해
git remote updategit fetch 를 사용했다.

git remote update
모든 원격 브랜치를 업데이트하여 최신 상태로 갱신한다. 하지만, 로컬에서 변동 사항을 병합하지는 않는다.

git fetch
현재 위치하고 있는 원격 브랜치만 업데이트한다. 하지만, 로컬에서 변동 사항을 병합하지는 않는다.
-all 옵션을 주면 모든 원격 브랜치를 업데이트할 수 있다.

git pull
현재 위치하고 있는 원격 브랜치를 업데이트하고 로컬에서 변동 사항을 병합한다.
로컬 브랜치를 업데이트할 때 사용한다.

참고 : git remote update / git fetch / git pull



세 번째 시도 > 해결!

이후에 새로운 branch 는 생성이 완료되어서 원래 하려고 했던
merge 작업을 진행하려고 했다. 그런데 이전에 테스트 하면서 merge 작업이 됐는지 dy 와 ty 의 branch 내용이 같다고 나왔다.

어쩔 수 없이 각각의 branch 를 열고 finder 에서 필요없는 파일을 삭제한 후
다시 merge 를 진행해서 정상적으로 합칠 수 있었다.



중간에 꼬였던 문제

github 에서 branch를 생성했는데, main branch 가 아닌 하위 branch 에서
또 하위 branch 를 생성해서 생긴 오류가 있었다.
그래서 아래 명령어를 사용해 원격 branch 를 삭제했다.

원격 branch 삭제 명령어
git push origin --delete remoteBranchName[원격 브랜치 이름]

참고) 로컬 branch 삭제 명령어
git branch -d [로컬의 브랜치 이름]

profile
개발과 디자인 두마리 토끼를!

1개의 댓글

comment-user-thumbnail
2022년 11월 30일

깃허브는 너무 어려워..

답글 달기