
많은 사람들이 프로젝트에서 git flow를 사용했다고 소개한다.
정확히 어떤 것인지 알고 사용해보자.
Git-flow 란?
Git으로 개발할 때 사용되는 방법론으로 완벽하게 따라할 필요는 없고
각자 개발 환경에 따라 변형해서 사용하면 된다.
5가지의 브랜치를 사용한다.
- master : 기준이 되는 브랜치로 제품을 배포
- develop : 개발 브랜치로 개발자들이 이 브랜치를 기준으로 각자 작업한 기능들을 합칩니다. (Merge)
- feature : 단위 기능을 개발하는 브랜치 (develop으로 merge)
- release : 배포를 위해 master 브랜치로 보내기 전에 먼저 QA(품질검사)
- hotfix : master 브랜치로 배포 후 버그가 생겼을 때 수정
IntelliJ 에서 Git-flow
1. git-flow 설치
brew로 git flow avh를 설치했다.
brew install git-flow-avh
처음에 brew install git-flow로 git-flow를 설치하니 버전이 0.4.1이라 안된다는 메시지가 떴다.
찾아보니 git-flow-avh를 설치하라는 가이드가 나오는데 설치하고보니 다음과 같은 차이가 있었다.
-
git flow
hotfix를 dev와 master에 각각 merge를 한다.
(즉, 가지가 hotfix하나에서 dev와 master branch로 두갈래 나뉘어진다.)
-
git flow avh
hotfix가 dev branch로 merge되고, hotfix가 merge된 dev branch를 master branch에 머지한다.
즉,hotfix > dev > master순이다.
2. git flow init 에러 해결
현재 git flow avh를 설치하니 git flow 버전은 1.12.3 이다.
git flow init 시에 에러가 발생했는데, ~/.gitflow_export 에 FLAGS_GET_OPT_CMD 환경 변수가 있는 것이 원인이었다.
삭제 후에 정상적으로 작동한다.
- issue: https://github.com/fork-dev/Tracker/issues/418
- Post installation setup: https://github.com/petervanderdoes/gitflow-avh/wiki/Installing-on-Mac-OS-X#post-installation-setup
3. IntelliJ 플러그인 사용하기
git-flow-integration 플러그인을 사용하자.
플러그인 설치 후, 오른쪽 하단에 Gitflow가 생긴다.
Init Repo 클릭 후, 설정하면 된다.
기본 옵션은 Git Flow 규칙을 따르기 때문에 기본 규칙을 따른다면 OK를 클릭하면 된다.


develop을 확인할 수 있다.

앞에서 봤던 feature, release 등을 확인할 수 있다.