인프런 강의를 보고 공부한 글입니다.
https://www.inflearn.com/course/%EC%A0%9C%EB%8C%80%EB%A1%9C-%ED%8C%8C%EB%8A%94-%EA%B9%83/dashboard
☑️ Branch
분기된 가지 (다른 차원)
프로젝트를 여러가지 모습으로 관리해야할 때
ex> 테스트서버, 새로운 기능, 새로운 디자인 등등
여러 작업이 독립적으로 진행될 때
위 모든 것들을 하나의 프로젝트 폴더에서 진행하기 위함!
☑️ branch 생성
git branch (생성할 브랜치 이름)
☑️ branch 목록 확인
git branch
- 별 표시 : 현재 브랜치는 main이라는 뜻
☑️ branch 이동
git switch (이동할 브랜치 이름)
- (add-coach) : 현재 브랜치가 add-coach 라는 뜻
☑️ branch 생성과 이동 동시에 하기
git switch -c (생성하고 이동할 branch 이름)
☑️ branch 삭제
git branch -d (삭제할 브랜치 이름)
지워질 브랜치에만 있는 내용이 있는 경우, 옵션을 -D를 주어 강제 삭제해야 한다.
☑️ branch 이름 변경
git branch -m (기존 브랜치명) (새 브랜치명)
☑️ branch 내역 살펴보기
git log
명령어의 경우, 현재 branch에서의 작업 내역만 알 수 있다.git log --all --decorate --oneline --graph
☑️ Merge
☑️ Rebase
☑️ Merge
git merge (합쳐지게 될 branch 이름)
merge는 새로운 하나의 commit이기 때문에, reset으로 되돌릴 수 있다.
병합된 branch는 삭제하면 된다. (git branch -d (삭제할 브랜치 이름))
☑️ rebase
git rebase main
☑️ 시점 맞추기
git merge new-teams
이 과정을 모두 겪으면 main 브랜치에 다른 브랜치의 작업들이 합쳐졌다.
☑️ 브랜치와 브랜치 사이의 충돌
☑️ merge 충돌 상황
☑️ 당장 충돌 해결이 힘들어서 충돌을 피할 경우
git merge --abort
해결 가능 시 충돌하는 부분을 add, commit 과정으로 병합 완료
☑️ rebase충돌 상황
☑️ 충돌 해결이 가능할 경우
git rebase --continue
☑️ 브랜치 생성
☑️ 브랜치 이동
☑️ SourceTree 브랜치 충돌 상황 (merge)
현재 브랜치로 to-merge 병합
을 클릭한다.
위 오류가 발생한다.
☑️ SourceTree 브랜치 충돌 상황 (rebase)
이 후 다시 main 브랜치로 온 후, to-rebase 브랜치를 병합한다.
이 후 안쓰는 두 브랜치 삭제