팀은 협업을 조율하기 위해 branching 워크플로 — branch를 어떻게 사용하고, 이름 짓고, merge할지에 대한 관례 — 를 채택합니다. 일반적인 것으로 GitHub Flow, Git Flow, trunk-based development가 있으며, 각각 다른 필요에 적합합니다.
GitHub Flow(단순, 일반적)
→ main은 항상 배포 가능(DEPLOYABLE)
→ 각 변경마다 main에서 FEATURE BRANCH 생성
→ PULL REQUEST 열기 → 리뷰 → main에 merge → 배포
main ──┬──────────────┬── (항상 배포 가능)
└─ feature ─PR─┘
✓ 단순, 지속적 배포 / 웹 앱에 적합
✓ 현대 팀에 가장 일반적; 최소한의 오버헤드
단순하고 인기 있음: main에서 branch하고, pull request를 열고, 리뷰하고, merge하고, 배포. main은 배포 가능 상태를 유지합니다.
