1. 여러 브랜치 만들어보기
1) Branch
- 프로젝트를 하나 이상의 모습으로 관리해야 할 때 사용한다.
- 여러 작업들이 각각 독립되어 진행될 때
- 예) 신기능 1, 신기능 2, 코드개선, 긴급수정
- 각각의 차원에서 작업한 뒤 확정된 것을 메인 차원에 통합
2) 브랜치 생성/이동/삭제
- 새 브랜치 생성 :
git branch 새브랜치명
- 브랜치 목록 확인 :
git branch
- 해당 브랜치로 이동 :
git switch 브랜치명
- checkout 명령어가 Git 2.23 버전부터 switch, restore로 분리
- 브랜치 생성과 동시에 이동 :
git switch -c 새브랜치명
- 브랜치 삭제 :
git branch -d 삭제할브랜치명
- 지워질 브랜치의 커밋이 처리되지 않은 경우 -d 대신 -D를 사용한다.
- 브랜치 이름 변경 :
git branch -m 기존브랜치명 새브랜치명
- 브랜치들은 GUI로 확인하는 것이 낫다.
2. 브랜치 합치는 방법
1) merge
- 두 브랜치를 한 커밋에 이어붙인다.
- 브랜치 사용 내역을 남길 필요가 있을 때 적합한 방식이다.
- merge는 reset으로 되돌리기 가능하다.
방법
- main 브랜치로 이동
- 해당 명령어로 병합 :
git merge 병합할브랜치명
- 소스트리에서 확인
- 병합된 브랜치는 삭제한다.
2) rebase
- 브랜치를 다른 브랜치에 이어붙인다.
- 한줄로 깔끔히 정리된 내역을 유지하기 원할 때 적합하다.
- 이미 팀원과 공유된 커밋들에 대해서는 사용하지 않는 것이 좋다.
방법
- main과 branch가 있을 경우 branch로 이동한다.
- 해당 명령어로 병합 :
git rebase main
- 소스트리에서 상태 확인
- main으로 이동 후 branch를 merge해준다.
- 병합된 브랜치는 삭제한다.
3. 충돌 해결하기
1) merge 충돌시
- 해결 가능한 경우 충돌 부분을 수정해주고
git add .
, git commit
으로 병합을 완료한다.
- 해결이 어려운 경우
git merge --abort
로 merge를 중단할 수 있다.
2) rebase 충돌시
- 해결이 가능한 경우
- 충돌 부분을 수정한 뒤
git add.
git rebase --continue
를 입력한다.
- 충돌을 모두 해결할 때까지 반복한다.
- 해결이 어려운 경우
git rebase --abort
로 중단할 수 있다.
- CLI로 진행하는 것을 권장한다.