GitHub Flow 는 쉽게 요약하자면,
브랜치를 하나의 base 브랜치 (main)
+ main 에 기능을 추가하기 위한 브랜치 (feat)
두개만으로 운영하여 훨씬 간단하지만 빠르게 수정 배포할 수 있는 전략입니다.
다음 그림은 GitHub Workflow 를 표현한 그림입니다.
Git Flow 와 비교하였을 때 훨씬 간단하죠? Git Flow는 다양한 종류의 브랜치를 사용하는 반면, GitHub Flow는 단일 브랜치 (master) 를 사용합니다.
배포는 Git Flow 와 동일하게 master 브랜치에서 수행되지만, 그 외의 release, hotfix 등의 다른 브랜치들 대신 하나의 feature branch 만이 존재합니다.
GitHub Flow 의 흐름 또한 그림에서 보시는 바와 같이 매우 간단합니다.
main
브랜치는 배포를 위한 소스코드를 관리하는 브랜치입니다.
신규 기능 개발이 필요할 때, commit convention
에 맞춰 브랜치를 따서 작업을 진행합니다.main
브랜치입니다.feat
브랜치를 main
브랜치로 Merge 합니다.<aside>
GitHub Flow는 단순하며 지속적인 배포를 강조하며, release 브랜치에서 배포를 수행합니다.
</aside>