Branch : 다른 차원
프로젝트를 하나 이상의 모습으로 관리해야할 때 ex) 배포용, 테스트용...
여러 작업들이 각각 독립되어 진행될때 ex) 신기능, 코드개선, 수정...
각각의 차원에서 작업한 뒤 확정된 것을 메인 차원에 통합
1. main 외 다른 branch 생성
git branch 생성이름
2. 브랜치 목록확인
git branch
3. 브랜치 이동
git switch 브랜치명
4. 브랜치 생성 및 이동
git switch -c 브랜치이름
Git 2.23 이전 버전은 git checkout -b 이름
5. 브랜치 삭제
git branch -d 이름
6. 브랜치 이름 바꾸기
git branch -m 기존이름 새이름
7. 브랜치 결과를 그래프로 보기
git log --all --decorate --oneline --graph
Branch 합치기
1. Merge 병합
두 브랜치를 한 커밋에 이어붙임
브랜치 사용내역을 남길 필요가 있을 때 적합한 방식
1-1. merge로 합치기
메인으로 할 브랜치로 이동 후
명령어 : git merge 합칠브랜치
1-2. reset으로 되돌리기
merge는 새로운 commit으로 reset으로 되돌리기
1-3. 병합된 브랜치 병합 삭제
명령어 : git branch -d 브랜치명
2. rebase
브랜치를 다른 브랜치에 이어붙임
한 줄로 깔끔히 정리된 내역을 유지하기 원할 때 적합
2-1. rebase 합치기
이동 대상 브랜치로 이동후 이동 위치명으로 rebase
명령어 : git rebase main
2-2. 브랜치 merge 하기
브랜치 merge 후 브랜치명 삭제 : git branch -d new-teams
3. 브랜치간 충돌 해결하기
3-1. 충돌을 만들기 위해 파일 변경 및 브랜치 생성
- Tigers의 manager를 Kenneth로 변경
- Leopards의 coach를 Nicholas로 변경
- Panthers의 coach를 Shirley로 변경
- 커밋 메시지: Edit Tigers, Leopards, Panthers
3-2. 임의의 브랜치1,2의 파일 변경 및 커밋
- Tigers의 manager를 Deborah로 변경
- 커밋 메시지: Edit Tigers
- Leopards의 coach를 Melissa로 변경
- 커밋 메시지: Edit Leopards
- Panthers의 coach를 Raymond로 변경
- 커밋 메시지: Edit Panthers
3-3. merge 하여 충돌 확인
3-4. rebase 충돌
'Git > 1. Git 기초' 카테고리의 다른 글
Github Pull Request(PR) 방법 (1) | 2024.06.14 |
---|---|
Git & Github 명령어 정리 (0) | 2024.05.21 |
Mac) 4. github와 git 연동하여 사 (0) | 2022.06.19 |
Mac) 2. git 캡슐(버전) 및 커밋 (0) | 2022.06.01 |
Mac) 1. git 설치 및 환경세팅 (0) | 2022.05.30 |