[Megabyte School] Git을 활용한 버전관리3 : Git flow 알아보기
Git flow 설치하기
Git flow를 사용하기 위해서는 설치가 필요합니다. MacOS의 경우 Homebrew를 통해 설치해주세요.
$ brew install git-flow-avh
위의 명령어를 입력했을 때, 아래와 같은 에러가 나타날 수 있습니다.
Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)!
To rerun under ARM use:
이럴경우 아래 명령어로 git flow를 설치해주세요.
$ arch -arm64 brew install git-flow-avh
Git flow 시작하기
git flow의 사용을 위해 아래 명령어를 입력해주세요.
$ git flow init
명령어 입력 후, 아래와 같은 몇가지 질문에 응답해주시면 됩니다.
Branch name for production releases: [main]
Branch name for "next release" development: [develop]
How to name your supporting branch prefixes?
Feature branches? [feature/]
Bugfix branches? [bugfix/]
Release branches? [release/]
Hotfix branches? [hotfix/]
Support branches? [support/]
Version tag prefix? []
Hooks and filters directory? [/Users/Documents/dev/branch-name/.git/hooks]
새 기능(feature) 시작하기
$ git flow feature start BRANCH_NAME
$ git flow feature start BRANCH_NAME
위와 같은 명령어로 'develop'에 기반한 새 기능(feature) 브랜치를 생성하고 해당 브랜치로 전환할 수 있습니다.
기능 완료하기
$ git flow feature finish BRANCH_NAME
$ git flow feature finish BRANCH_NAME
위의 명령어로 개발을 완료합니다. BRANCH_NAME을 develop branch에 가져와 merge하게됩니다.
배포 시작하기
$ git flow release start VERSION_NAME
$ git flow release start VERSION_NAME
VERSION_NAME 버전의 배포를 시작합니다.
▶versioning 규칙
마이너 체인지
이전 버전에서 약간의 변화된 내용을 업그레이드 하는 것으로 뒷자리를 변경
ex) v0.1
메이저 체인지
없던 기능 추가 or 있던 기능 드랍 등 많이 변화가 있을 때 앞자리를 변경
ex) v1.0
배포 완료하기
$ git flow release finish VERSION_NAME
$ git flow release finish VERSION_NAME
위의 명령어를 입력하면 release 브랜치를 master 또는 main 브랜치에 merge할 수 있습니다. 이후 release, tag, develop 정보 입력 후 release 브랜치가 삭제됩니다.
Git flow로 협업하기
▶ 팀장 역할
새로운 repository 만들기
새로운 repository를 만들어 git flow를 이용해 develop branch를 만듭니다.
$ git clone [ 새로운 repository 주소 ]
$ cd NEW_REPOSITORY
$ git flow init
$ touch FILE_NAME
$ git add FILE_NAME
$ git commit
$ git push -u origin develop
▶ 팀원 역할
팀장 github repository에서 fork하기
팀원들은 팀장의 새로운 repository를 fork를 이용해 자신의 github 계정의 repository로 가져옵니다.
Issue 등록하기
팀원들은 팀장의 repository에서 issue항목을 통해 자신이 해야 할 목록을 markdown 문법을 통해 작성할 수 있습니다.
Develop 브랜치 환경에서 코드 작성하기
$ git clone [ fork한 repository 주소]
$ cd NEW_REPOSITORY
$ git flow init
$ git flow feature strat NEW_NAME
~~~~~~~~~~[ 코드 작성 ]~~~~~~~~~~
$ git add FILE_NAME
$ git commit
$ git flow feature finish NEW_NAME
$ git push -u origin develop
팀장 repository로 보내기
Github repository => Pull request => New pull request
이후 선택 항목에서 main을 develop으로 바꾼 뒤 팀장에게 보낼 메세지를 작성하고 보내면 됩니다.
▶ 팀장 역할
팀원 응답사항 확인하기
팀원이 보낸 응답사항을 확인하고, 보충사항이 있으면 팀원에게 피드백을 줄 수 있습니다. 이것을 팀장 repository에 합치기 위해서는 Merge pull request 버튼을 누르면 됩니다.
Author And Source
이 문제에 관하여([Megabyte School] Git을 활용한 버전관리3 : Git flow 알아보기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sweet_pumpkin/Megabyte-School-Git을-활용한-버전관리3-Git-flow-알아보기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)