GitHub flow로 협업하기 - Git 브랜치 전략

realzu·2022년 8월 3일
4

프로젝트를 진행하면서 Git으로 협업하기 위해 브랜치 전략을 알아보았다. Git 브랜치 모델에는 Git Flow와 Trunk-Based Development 등의 전략이 있다. 그중에서 우리가 결정한 전략은 GitHub flow이다. GitHub flow 브랜치 전략에 대해 알아보자!

🌈 GitHub flow란?

GitHub flow는 feature, develop, release, hotfix, master 총 5가지의 브랜치로 협업하는 Git Flow 전략에서 더 단순화된 전략으로, featuremaster 브랜치로만 협업한다. 기존의 Git Flow 전략이 복잡하다고 하여 'Scott Chacon'에 의해 생겨난 전략이다. main 브랜치와 기능 추가를 목적으로 한 하위 브랜치인 feature를 사용한다. 나아가 더욱 철저한 워크플로우를 위해 Pull request 의 사용을 권장한다.

🌟 선택한 이유

우리의 프로젝트 깃허브 저장소는 프론트엔드와 백엔드 각각 나눠서 사용하기 때문에, 프론트엔드는 2명이서 협업하게 된다. 큰 규모의 인원이 아니므로 git flow처럼 많은 브랜치를 사용하는 것보다 mainfeature라는 브랜치 2개를 통해 빠르게 협업하는 것이 더 소통하는 데에도 편리하다는 생각이 들었다!

🌟 주의할 점

  1. 커밋 메시지가 정확해야 한다.
    merge 이후 문제가 생겼을 때 확실하게 찾을 수 있다.

  2. 하위 feature 브랜치에서 작업 내용 전체를 한 번에 올리는 것보다 기능별로 잘게 쪼개서 올린다.

  3. Pull requests 를 철저하게 한 후, merge 한다.


따라서 우리는 GitHub Flow 브랜치 전략으로 협업을 진행한다.
feature 브랜치의 경우, feature/{구현기능} 형식으로 브랜치명을 생성한다. 또한 각자 Pull requests할 때마다 코드 리뷰를 하여, 서로의 코드를 확인하고 워크플로우를 원활하게 할 것이다. 나아가 백엔드와 프론트엔드 모두 정해진 커밋 메시지 규칙에 따라 협업을 더욱 철저하게 하려고 한다!

<출처>
https://tecoble.techcourse.co.kr/post/2021-07-15-git-branch/
https://inpa.tistory.com/entry/GIT-%E2%9A%A1%EF%B8%8F-github-flow-git-flow-%F0%9F%93%88-%EB%B8%8C%EB%9E%9C%EC%B9%98-%EC%A0%84%EB%9E%B5

profile
부딪히지 않으면 아무 일도 일어나지 않는다 👊

0개의 댓글