git flow는 크게 아래 5가지 branch가 있음.
master: 실제 배포 될 수 있는 버전의 브랜치
feature: 기능을 개발하는 브랜치
develop: 다음 출시 버전을 개발하는 브랜치
release: 이번 출시 버전을 준비하는 브랜치 (QA 진행)
hotfix: 출시 버전에서 발생한 버그를 수정하는 브랜치
모든 작업은 git bash에서 수행했다.
Git Flow 순서
-
git flow 초기화
- git flow init -f
- git flow를 초기화 한다. 옵션 -f는 강제로 초기화 함.
- enter만 쳐주면 됨.
- 초기화가 끝나면 develop 브랜치로 checkout 됨.
- git flow init -f
-
feature 생성 (기능 개발)
- feature 브랜치를 생성한다.
- git flow feature start
- git flow feature start
- 필요한 기능 개발을 진행한다.
- 필요한 기능을 모두 개발 후 git add, git commit을 수행
- feature 브랜치를 종료한다.
- git flow feature finish
- git flow feature finish
- 위 과정을 모두 수행하면 개발한 feature branch는 develop branch에 merge 가 되는 것을 확인 할 수 있다.
- feature 브랜치를 생성한다.
-
release 생성 (출시를 위한 사소한 버그 수정 및 버전 변경)
- release 브랜치를 생성한다.
- git flow release start
- 보통 release의 이름은 version 이름을 쓴다.
- git flow release start
- 사소한 버그 및 버전 변경을 진행한다.
- 이 후 git add, git commit을 수행
- release 브랜치를 종료한다.
- git flow release finish
- git flow release finish
- 위 과정을 모두 수행하면 수정한 release branch가 develop, master branch에 merge가 되는 것을 확인할 수 있다.
- 추가로 tag 이름명도 적어준다.
- master branch로 checkout 한다.
- git checkout master
- git push origin master (master는 원격으로 push 한다. 필요하면 develop branch도 push 해준다.)
- git push –tags (태그 정보도 같이 push 한다.)
- 원격 저장소에서 push 된 정보를 확인 할 수 있다.
- release 브랜치를 생성한다.
-
hotfix 생성 (출시 이후 버그 수정)
- hotfix는 위 release랑 동일함. 브랜치 생성, 종료할 때만 “git flow hotfix”로 바꿔준다.
Comments