HyeLog

깃(Git) - 협업 - branch 다루기 본문

Git

깃(Git) - 협업 - branch 다루기

shj718 2022. 1. 19. 11:14

한 프로젝트를 여러 사람이 같이 할 때 (ex. 메신저 프로그램을 만든다고 하면) 메세지 보내기 기능, 사진 보내기 기능, 친구 목록 보기 기능 등을 하나의 branch 내에서 작업하는 것보다 따로 관리하는 것이 좋음. (각 branch에서 커밋한 내용들은 그 branch내에서만 존재!) 그럼 한 branch에서 작업하다가 에러가 나도 다른 branch 에 영향 X, 기존 branch로 돌아갈 수도 있음!

출처 : https://www.youtube.com/watch?v=9iVO7XCwEBA

- git branch [브랜치 이름] : 지정한 이름으로 브랜치 생성

(→기존 branch의 해당 시점파일 내용과 커밋들이 그대로 반영됨!)

- git branch : 존재하는 branch들 확인

- git checkout [들어갈 branch 이름] : 지정한 branch로 접속

 

conflict 란? 서로 다른 branch에서 작업한 내용이 충돌하는 경우를 말함!

예시 상황) master 브랜치에서 branch A와 B를 생성하고, branch A와 B가 같은 파일(hello-git.c)의 3번째 줄을 각기 다른 내용으로 수정함. → master branch 로 checkout해서(=들어가서) merge A 라는 명령어를 수행하면 branch A의 수정내용이 master branch에 성공적으로 반영됨. → 이 후에 merge B 를 수행하면 CONFLICT 라는 메세지 뜸!!

출처: https://www.youtube.com/watch?v=9iVO7XCwEBA

→ 파일 안을 확인해보면, 위와 같이 충돌 내용 들어있음. → 내가 원하는대로 코드 수정하기 → master 브랜치에서 git add 한 후, commit 해서 수정된 내용 반영하기!