git-flow는 형상 관리 전략일 뿐이다.
하나의 프로젝트에 소스코드를 관리하고 개발자마자 브랜치를 따고 코딩하는 상황에서
코드 형상/이력 관리를 보다 효율적으로 하고 협업시 문제점을 최소화 할 수 있는 전략
총 5개의 branch를 사용한다.
master와 develop 브랜치가 중심 이며,
feature/hotfixes/release는 develop에서 브랜치를 딴다
1. master branch
: 배포되었거나 배포될 소스가 저장되는 브랜치
2. develop branch
: 개발을 진행하는 브랜치
3. feature branch
: 기능 단위 개발이 진행되는 브랜치
4. hotfixes branch
: 배포 버전에 생긴 문제로 긴급 트러블슈팅이 필요할 때
개발이 진행되는 브랜치
5. release branch
: 내부적으로 배포할 준비가 되었다고 생각되는 소스가
저장되는 브랜치
Commit message의 기본적인 틀을 말한다.
ex) [날짜][개발자] [기능 설명]
ex) [CRUD][기능 설명]
[ remote origin은 무엇이고 remote upstream은 무엇인가? ]
: origin과 upstream은 두 repo간 정의되는 상대적인 개념일 뿐이다.
upstream
: 다른 사용자의 repo를 fork하여 가져올 때 지칭하는 이름
origin
: default 원격지 지칭 이름