고양이도 이해하는 Git 사용법

번외 2. 브렌치 운용 전략

브렌치 전략의 핵심은 어렵지 않습니다. 작업을 작게 나누고, 빨리 합치는 것입니다.

팀마다 이름은 다를 수 있지만, 실제로는 이 공통 원칙 위에 Git Flow, GitHub Flow, GitLab Flow, TBD 같은 운영 규칙을 얹어서 쓰는 경우가 많습니다.

모든 전략에 깔린 기본 습관

  1. 기준 길(main)을 항상 안정적으로 유지한다.
  2. 작업마다 짧은 브렌치를 하나씩 만든다.
  3. 완료되면 빠르게 main으로 합친다.
  4. 긴급 수정은 별도 브렌치에서 바로 처리한다.

어떤 전략을 고르더라도, 브렌치가 너무 오래 열려 있으면 결국 서로 다른 방향으로 멀어지고 다시 합칠 때 비용이 커집니다. 아래 두 패턴은 많은 팀이 공통으로 지키려는 기본 습관입니다.

GitHub Flow와 TBD는 이 습관이 더 직접적으로 드러나는 편이고, Git Flow도 브렌치 종류가 더 많을 뿐 안쪽 운영 감각은 크게 다르지 않습니다.

그림 B2-1. 짧은 작업 브렌치를 빠르게 합치는 패턴

브렌치가 오래 열려 있지 않으면 충돌 위험이 크게 줄어듭니다.

그림 B2-2. 긴급 수정 브렌치 운영

긴급 수정은 짧게 처리하고 main으로 먼저 반영한 뒤, 필요한 길에 다시 나눠 보냅니다.

대표 전략 비교

아래 전략들은 정답 경쟁이 아니라, 팀의 배포 속도와 검수 방식에 따라 무게가 달라지는 운영 방식입니다. 탭을 눌러 각 전략의 설명과 그래프 예시를 같이 확인해 보세요.

Git Flow

main과 develop처럼 오래 유지되는 기준 길을 두고, 기능 작업은 develop 쪽으로 모은 뒤 배포 직전에 release로 다듬는 방식입니다.

  • 배포 주기가 분명하고, 아트 검수나 QA 기간을 따로 두는 팀에 잘 맞습니다.
  • 기능 작업, 배포 준비, 긴급 수정의 길이 명확히 나뉘어 있어 역할 구분이 쉽습니다.
  • 대신 브렌치 수가 많아져서 작은 팀이나 빠른 반복 작업에는 다소 무겁게 느껴질 수 있습니다.

그림 B2-3. Git Flow 예시

feature는 develop으로, release는 배포 준비용으로, hotfix는 main 기준 긴급 수정용으로 따로 움직입니다.