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 update
와 git 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 [로컬의 브랜치 이름]
깃허브는 너무 어려워..