git flow는 서로 간의 약속인 방법론이다.
더 효과적인 소스코드 관리를 위해 브랜치를 관리해 주는 것이다.
팀장과 팀원들이 개발한다고 가정하자.
brew install git-flow-avh
# git flow 다운
git flow init
# 여러 브랜치 명에 대한 질문이 나오는데 []안에 이름이 있으면 그냥 enter, 없으면 이름을 입력해준다.
git flow feature start [name]
해당 git의 브랜치는 생성한 브랜치로 자동으로 바뀐다.
git flow feature finish [name]
git flow feature finish를 하면 자동으로 develop 브랜치에 merge가 되고 브랜치는 삭제된다.
git flow release start [name]
테스트 해보기
release 끝내기
git flow release finish [name]
release를 끝내는 명령어를 치면 merge 메시지를 입력하는 것과 tag 메시지를 입력하는 부분이 나오니깐 입력내용 있으면 입력
commit 후 자동으로 develop와 master에 merge가 되어 있다.
git push --tags
git push origin develop
# develop 브랜치 push
git checkout master
# master 브랜치로 바꾸기
git push origin master
# master 브랜치 push
이렇게 git flow를 이용해서 협업을 하면 브랜치마다의 역할이 확실하게 정해져 있고, 툴을 이용하면 자동으로 브랜치 생성과 merge까지 도와주니 적응만 된다면 소스코드 관리과 협업에 매우 효과적일것 같다.