Git flow

Preview:

DESCRIPTION

Git Flow

Citation preview

Git Flow

Branches

• Master : 배포되었거나, 배포하기 직전의 브랜치

• Hotfix : 긴급 버그 배치 브랜치

• Release : 배포를 준비 하기 위한 브랜치, develop에서 브랜칭

• Develop : 개발 완료되고, 언제든지 배포할 수 있는 상태

• Feature : 실제 개발 브랜치 develop에서 브랜칭

Develop

Release

master

hotfix

feature

소개

Develop

master

Develop은 최초에 Master 로 부터 브랜칭

Develop

master

신규 개발은 feature 브랜치로…

feature

Develop

master

개발이 끝나면 배포되도 가능할 때 develop으로 머지

feature

Develop

master

배포를 위해 develop 에서 release 브랜칭 – 테스트도 여기서 Release 201409021501

feature

Release

Develop

master

오직 버그 수정만 계속

feature

Release

Develop

master

feature

Release

배포 후 master/develop 머지

Develop

master

feature

Release

TAG 201409021501

Develop

master

feature

Release

Hotfix hotfix

Develop

master

feature

Release 버그 수정 후 master/develop 머지

hotfix

Feature 개발 중에

Develop

master

feature

Release

지속적으로 develop을 feature로 머지

hotfix

Feature 2

Feature 개발이 끝나도 배포가 가능할때 develop 으로 머지한다.

안그러면… 머지한걸 다시 수동으로 빼야하는

지옥도…

간단한 버그는 그냥 develop 바로 수정

Merge 시에는 rebase 옵션을 사용하자.

차이는 그냥 merge commit 이 남는가임

그리고 커밋도 가능한 squash 로 모아서 하나

짜리로 merge를

큰 변경들이 있을때는? 그게 겹친다면?

주기적으로 develop을 역 Merge

같이 개발되어야 하는 것들은 부모 브랜치를 하나 추가로 따고 이를 역

머지

그리고 유도리 있게 ㅋㅋㅋ

Thank you.