Git workflow
Git은 브랜치로 작업을 관리함
팀에서 브랜치를 어떻게 사용할 지에 대한 규칙을 Workflow라고 함,
Git flow
브랜치 역할이 명확하고 대규모 프로젝트에 적합함
- master : 제품으로 출시하는 브랜치 (실제 배포 중인 상용 버전)
- develop : 다음 출시 버전을 개발하는 브랜치 (실제 작동 중인 버전의 다음 버전을 개발하기 위한 메인스트림)
- feature : 기능을 개발하는 브랜치 (develop 브랜치에서 뻗어나와 다시 develop에 병합한다)
- release : 새로운 버전을 배포하기 위한 브랜치 , QA(테스터)의 용도, develop에서 뻗어나와 다시 develop으로 합쳐지거나 배포 준비가 되어있으면 master 브랜치로 합쳐진다.
- hotfix : 상용 제품에서 버그가 발생했을 때 처리하는 브랜치, master 브랜치에서 뻗어나와 master와 develop에 합쳐진다 (버그 픽스를 위한 브랜치로 디버깅만 커밋하여, 보통 일회성으로만 사용함)
Github flow
하나의 메인 브랜치인 master 브랜치를 중점으로 운용하며 pull request를 활용하는 방식
master 브랜치는 항상 최신 버전을 유지하며 안정적이어야한다.
fork // 내 저장소로 fork
git clone // local로 가져옴
git checkout -b feature ,
git switch -c feature // dev 브랜치를 생성하고 dev 브랜치로 이동한다