현의 개발 블로그

git branch 본문

git branch

hyun2371 2023. 6. 7. 21:05

branch

branch 개념

독립적으로 작업을 진행하기 위한 개념이다.

각 브랜치는 다른 브랜치에 영향을 받지 않는다.

 

배포할 때는 master branch, 개발 목적에서는 develop 브랜치를 사용한다.

topic 브랜치는 기능 추가나 버그 수정과 같은 작업을 위해 쓰인다.

 

 

branch 명령어

git branch

현재 브랜치를 확인한다.

현재 브랜치는 main이다.

 

git checkout [브랜치 이름]

브랜치를 전환한다.

 

git checkout -b [브랜치 이름]

브랜치를 생성하고 해당 브랜치로 전환한다.

 

 

fast-forward 병합

현재 head는 like_feature 브랜치를 가리키고 있다.

 

like_feature branch에서 작업을 마치고 master branch로 통합한다고 해보자.

master 브랜치로 전환하고 merge 명령어를 입력하면 된다.

master에서 변경된 내용 없이 새로운 내용만 추가되었다.

업데이트된 내용이 곧바로 merge된다.

이러한 merge 방식을 fast-forward라고 한다.

 

병합 후 두 브랜치의 내용이 일치한다.

병합 충돌 해결

merge한 두 branch에서 같은 파일을 변경했을 때 충돌한다.

 

git status 명령어로 어느 파일이 충돌했는지 확인 가능하다.

 

충돌이 일어난 comment.js 파일을 열어보면 다음과 같다.

===를 기준으로 <<<는 HEAD가 작성한 버전 >>>는 like_feature가 작성한 버전이다.

두 버전 중 어떤 걸 사용할지 유저가 직접 수정해야 한다.

수정 완료 후 '<<<<<', '=======', '>>>>>'가 포함된 행을 삭제해주자.

 

 

수정 후 git add, git commit을 거쳐 다시 merge해준다.

 

 

 


Reference

한이음 git 교육

'' 카테고리의 다른 글

github에서 gitlab으로 저장소 이전하기  (0) 2023.06.07
깃 원격 저장소  (0) 2023.06.07
git의 상태 및 파일 생성  (0) 2023.06.07
깃 저장소 생성 및 사용자 정보 설정  (0) 2023.06.07
깃 커밋 메세지 수정하기  (0) 2023.05.26
Comments