[Git] 협업에서 브랜치 사용하기

선영·2022년 9월 20일
0

Git&Github

목록 보기
9/9
post-thumbnail

협업을 하다 보면, 팀원1은 '기능A'를 만들고, 팀원2는 '기능B'를 만드는 것처럼 팀원들이 각자 다른 기능을 맡아서 작업하는 경우가 많음. 이럴 때는 각자의 작업이 main 브랜치 에 있는 문서들과 섞이지 않도록 새 브랜치를 만들어서 버전을 관리함. 그리고 각 팀원이 만든 새 브랜치 역시 원격 저장소에 그대로 푸시할 수 있음.

새로 만든 브랜치 푸시하기

'팀장'이 새로운 기능을 만들기 위해 자신의 지역 저장소에 f 라는 브랜치를 만들고 커밋한 다음 원격 저장소에 푸쉬하는 과정임.

① 원격 저장소에 다른 팀원들의 커밋이 추가되어 있는지 확인하기 위해 먼저 최신 커밋 정보를 가져옴.

git pull

② 새로운 기능을 구현하기 위해 지역 저장소에 브랜치 f 를 만들고 f로 이동함.

git checkout -b f

f 브랜치 에서 f1.txt 문서를 만든 후 커밋함.

vim f1.txt ▶ 기능을 작성하고 저장함.
git add f1.txt
git commit -m "features1"

원격 저장소에 f 브랜치 까지 함께 푸쉬해야함. git push 뒤에 origin f 를 추가하면 원격 저장소(origin)에 f브랜치를 푸쉬한다는 의미임.

git push origin f

⑤ 푸쉬가 끝났다면, 웹 브라우저에서 원격 저장소로 접속함. 저장소 파일 목록 위해 2 brnaches 라고 표시됨. 눌러 보면 방금 푸쉬한 브랜치가 나타남.


pull requestpush한 브랜치 병합하기

아직 원격 저장소의 파일 목록에는 f 브랜치 에서 만들었던 f1.txt 파일이 없음. 푸시한 브랜치는 풀 리퀘스트(pull request) 를 통해 병합해야 원격 저장소에 반영되기 때문임.

원격 저장소에서 브랜치 설명 옆에 있는 New pull request를 클릭함.

② 풀 리퀘스트 메세지를 작성한 후 Create pull request 를 누르면, 협업 중인 저장소에 풀 리퀘스트가 전송됨.

③ 협업 중인 원격 저장소에 등록된 pull request 는 공동 작업자 중 누구나 살펴보고 병합할 수 있음. 저장소 파일 목록 위의 Pull request 누르면 등록된 풀 리퀘스트 목록이 나타남.

④ 풀 리퀘스트 메시지를 살펴본 다음, 내용에 문제가 없으면 Merge pull request 를 눌러 병합함. 필요하다면 이 공간을 통해 풀 리퀘스트를 남긴 사람과 메시지를 주고받을 수도 있음.

⑤ 커밋 메세지를 직접 입력하거나 기본 메세지를 사용할 수도 있음. Comfirm merge 를 누르면 브랜치 병합이 끝남.

⑥ 브랜치가 병합되면 해당 브랜치에 있던 파일이 main 화면이 나타남.

⑦ 브랜치가 병합된 상태라면 merged 라고 표시됨. 그리고 공동 작업자 중 누가 브랜치를 병합했는지도 알 수 있음.

⑧ 깃허브에서 협업할 때는 보통 작업자마다 브랜치를 만들어서 진행하고, 작업 중간중간 pull request를 보내서 main 브랜치에 병합함. 그래서 깃허브로 협업할 때는 다른 작업자의 변경 내용을 바로 반영하기 위해 항상 pull 부터 한 다음 자신의 작업을 진행하는 것이 좋음.


0개의 댓글