[git] branch 란? 생성해서 사용법 익히자

git
블로그 이미지

이챙(leechaeng)

﹒2021. 3. 11.

git branch 왜 쓰는거야?

branch는 git 에서 버전을 나누어서 관리 할 수 있게 해줍니다.
예시를 들어볼게요
한 회사에서 영심직원과 철수직원이 각자 컴퓨터에서 같은 파일을 작업을 하고있습니다.
작업하고 각자 commit 을 한 후 저장소에 push 를 하갰죠? 이럴 경우 충돌이 납니다.
왜냐면 같은파일을 다른 커밋으로 올리면 github는 이게 무슨커밋이 맞는건지 모르거든요

이럴때 필요한것이 branch 입니다
번역하면 '가지' 인데요
나무가지를 떠올려보세요 한 기둥에 가지가 여러개로 나누었죠? 브랜치가 바로 그것입니다
한 프로젝트에서 브랜치를 나누어서 작업하자! 라고 생각하시면 됩니다

git branch 만들어보자

1.첫번째 커밋 저는 새폴더를 만들어주었어요.

새 파일을 생성 후 add 와 commit 까지 하였습니다.
저는 현재 맥으로 사용하고 있는데 window의 경우 똑같습니다.
걍 따라하시면 되요~!
지금 현재 브랜치는 master branch 입니다.
브랜치 목록을 확인해보니 master 만 나와있어요.
master branch 가 기본 브랜치에요
branch 가 나무의 나뭇가지라면 master 는 나무의 기둥이에요
위에 commit 을 먼저 해주었잖아요
왜냐면 첫번째 commit 하면 이 커밋을 기점으로 시작하는 branch들을 사용 할 수 있게되요.
그래서 branch 생성 전에 commit 을 안했다면 해줘야합니다.
2.branch 생성

git branch [브랜치이름]

저는 브랜치이름을 cy_branch 로 만들어주었어요
브랜치 목록을 확인해주니 cy_branch 가 생성되었죠?
3.branch 들어가기

git checkout [브랜치이름]

checkout 해주고 다시 브랜치 확인을 해주었더니 cy_branch에 불이들어왔어요
체크아웃이 아주 잘되었다는 증거입니다 ㅎㅎ
4.branch 에서 파일생성 현재 브랜치에 checkout 된 상태에서 파일을 하나 생성해볼까요?
그리고 add commit 까지 해줍시다
master에서 커밋해준 파일과 cy_branch 에서 커밋해준 파일이
cy_branch 브랜치 안에서 같이 보이고 있죠?
그런데 mater 에서는 cy_branch 에서 만든 파일이 안보여요. 왜냐면 branch를 나누어서 파일을 관리중이니까요
밑에 그림을 보면 현재상황을 알수 있습니다

파일을 나누어서 관리했으니 이제 합쳐서 github에 올려주어야겠죠?
그럼 여기서 저희가 원하는건 바로 병합 입니다
master 파일에 branch 파일을 병합해줄게요.
5.branch merge 하기 branch를 병합하기 위해선 병합을 해줄 브랜치로 가주어야 합니다.
cy_branch를 master 에 합치고 싶으니까 master 브랜치로 가야되는거죠


git merge 병합할 브랜치이름

merge 는 병합해주는 git 명령어 인데요.
현재 병합하려는 master 브랜치에서 merge를 해주면 master 브랜치에서도
cy_branch 에서 생성한 파일을 확인 하 실수 있습니다.
이챙(leechaeng)
이챙(leechaeng)

프론트엔드 개발도 하고 뛰기도 하고

'git' 카테고리의 관련 글