Git Flow Branch 전략 활용

OH JU HYEON·2022년 9월 23일
1

Git

목록 보기
4/4
post-thumbnail
post-custom-banner

Git Flow Branch 전략 활용

탐구

1. 프로젝트 이슈 생성

Git Hub에서 레포에 들어가 Issues 탭에서 이슈를 생성해 준다. 이때 #20이 이슈 넘버로 체크하고 넘어가면 된다. 위에서 생성한 이슈 넘버는 #20 이지만 지금 작성하고 있는 기능은 #18이라서 아래서는 #18로 진행한다.

2. Dev 브랜치 생성

main 브랜치에서 dev 브랜치를 파준다. 나중에 버전을 배포할 때 활용할 release 브랜치도 미리 만들어 주었다. dev에서 기능을 작성하고 완성이 되면 release 브랜치로 넘겨주고 release에서 main으로 넘겨줌으로써 하나의 버전이 완성된다고 보면 된다.

3. Dev 브랜치에서 이슈 브랜치 생성

dev 브랜치에서 이슈 넘버를 활용한 브랜치를 생성해 준다. 이때 주의 사항으로는 dev는 항상 최신을 유지해야 하기 때문에 pull을 받아준 다음에 브랜치를 생성한다. feature/#18로 기능을 추가하는 이슈임을 명시해 주었다.

4. 이슈 브랜치에서 기능 작성 후 Dev 브랜치에 Rebase

기능을 작성해서 커밋이 여러개로 나뉘었다면 dev에 Rebase를 해 줘야 한다. 정리하자면 순서가 기능 작성 -> Commit -> Rebase -> PR 이렇게 간다고 보면 된다. 이때도 항상 dev가 최신인지 체크한 상태에서 진행해야 하며 pull을 먼저 받아야 하는 상황이라면 git stash 명령어를 활용해서 작업한 내용을 잠시 빼뒀다가 pull을 받고 난 뒤에 다시 작업물을 가져와서 체크 후 commit -> rebase를 진행해 주면 된다.

5. PR & Merge

PR을 진행하고 dev로 merge해 주면 위 처럼 기능 별 commit이 dev에 잘 모아져서 꼽히게 된다. 필요에 따라 완성된 버전은 release 브랜치에 다시 꼽아서 main으로 보내주면 되고 버그가 있다면 hotfix를 활용하는 방법도 있다.

중요한 점은 Git Flow 브랜치 전략은 방법이 아닌 규칙이기 때문에 같은 팀원끼리 규칙을 잘 정하여 수행하는 것이 중요하다고 생각한다.

참고

화해 기술블로그
우아한 형제들 기술블로그

profile
읽기만 해도 이해가 되는 글을 쓰기 위해 노력합니다.
post-custom-banner

0개의 댓글