Branch: 분기된 가지 (차원이 다른 것)

브랜치는 언제 사용할까?
- 프로젝트를 하나 이상 모습으로 관리해야할 때
ex) 실배포용(main), test 서버용, 새로운 시도용 - 여러 작업들을 각각 독립되도록 진행시켜야 할 때
ex) 새로운 기능1, 새로운 기능2, 코드 개선, 긴급 수정
- 각각의 차원에서 작업한 뒤에 확정된 것을 메인 차원에 통합시킴! - 현업에서 굉장히 유용하게 사용되니 잘 알아두어야함.
1. Branch 생성 / 이동 / 삭제
예전에 아래의 명령어를 통해 기본 브랜치명을 main으로 바꿨다.
원래는 master 였는데, main으로 바꿈.
git config --global init.defaultBranch main
이제 main이 아닌< 다른 branch를 생성 >해보자. 예시로 add-coach를 입력한다.
git branch add-coach
그리고 현재 브랜치 목록을 확인해보자.
git branch
그리고< add-coach 브랜치로 이동 >해보자.
git switch add-coach
(원래는 checkout을 사용했는데, 현재는 switch와 restore로 기능을 분리시켰음)
<생성과 이동을 동시에 진행하는 명령어>
git switch -c new-teams
기존에는 git checkout -b (새로운 브랜치명) 이렇게 사용했다.
<브랜치 삭제하는 명령어>
git branch -d (삭제할 브랜치명)
지울 브랜치에 다른 브랜치로 적용되지 않은 내용의 커밋이 있을 시 -D 옵션으로 강제 삭제한다.
git branch -D (강제삭제할 브랜치명)
<브랜치 이름 바꾸는 명령어>
git branch -m (기존 브랜치명) (새 브랜치명)
소스트리에서 확인해보면 아래와 같이 맨 끝에 4개의 가지로 뻗어나갈 준비가 됐다.

2. 각각의 브랜치에서 서로 다른 작업해보기
1) main 브랜치 작업
- Leopard의 members에 Olivia 추가(커밋 메세지: Add Olivia to Leopards)
- Panthers의 members에 Freddie 추가(커밋 메세지: Add Freddie to Panthers)


커밋을 완료하고 난 뒤 소스트리에서 확인해보자

오 main 가지가 뻗어 나간 것을 확인할 수 있다.
작업을 수행하고, add-coach 브랜치로 이동하여 해당 코드를 확인해보자!


add-coach branch에서 확인한 결과, main 가지에서 변화를 주었지만, add-coach branch를 포함한 다른 브랜치에는 영향을 미치지 않았음.
add-coach에서 다음 예시와 같이 coach를 추가해보겠음

Tigers의 매니저 정보 아래 coach: Grace를 추가함(커밋 메세지: Add Coach Grace to Tigers)
Leopards의 매니저 정보 아래 coach: Oscar를 추가함(커밋 메세지: Add Coach Oscar to Leopards)
Panthers의 매니저 정보 아래 coach: Teddy를 추가함(커밋 메세지: Add Coach Teddy to Panthers)

오 가지가 뻗어나갔다.
브랜치를 새로만들어서 새로운 팀도 추가해서 확인해보자.

오 가지가 뻗어나감!!!
소스트리에서만 확인했는데 bash에서도 아래의 명령어를 통해서 확인이 가능하긴하다.
git log --all --decorate --oneline --graph

출처: 얄코 깃허브
'출입금지!! 개인공부방 > Git' 카테고리의 다른 글
| (git) 브랜치 충돌 해결하는 방법 (0) | 2023.08.03 |
|---|---|
| (git) branch를 합치는 방법(merge, rebase) (0) | 2023.08.02 |
| (git) 버전 되돌리기 (0) | 2023.08.02 |
| (git) 프로젝트 변경사항을 버전에 담기 (0) | 2023.08.02 |
| .gitignore 사용 방법 (0) | 2023.08.01 |