피드로 돌아가기
We Shipped to 3 Platforms With One Merge. Here's Exactly How.
Dev.toDev.to
DevOps

3개 플랫폼의 브랜치 전략을 단일 빌드-런타임 식별 구조로 통합

We Shipped to 3 Platforms With One Merge. Here's Exactly How.

Ashish Patel2026년 4월 23일12intermediate

Context

화이트 라벨 SaaS 운영을 위해 플랫폼별로 Git 브랜치를 분리하여 관리한 구조. 기능 추가 및 버그 수정 시 다수의 PR 생성과 Cherry-pick 과정에서 발생하는 코드 발산(Divergence) 및 동기화 비용의 증가가 핵심 병목으로 작용.

Technical Solution

  • 플랫폼 식별 주체를 Deploy-time에서 Runtime으로 전환하여 단일 빌드 아티팩트 생성
  • Hostname 기반의 Identity Detection 로직을 통한 실행 환경의 동적 파악
  • 플랫폼별 기능 활성화 여부를 제어하는 Feature Flags 도입으로 조건부 라우팅 및 UI 렌더링 구현
  • 경로 덮어쓰기 방식의 에셋 관리를 Identity Directory 구조의 명시적 경로 매핑 방식으로 변경
  • Build Once, Deploy Everywhere 원칙 기반의 CI/CD 파이프라인 구축을 통한 배포 일관성 확보
  • 격리된 Test Path 인프라 구축을 통한 프로덕션 영향 없는 파이프라인 검증 체계 마련

- 설정 정보를 Git Branch 및 History에 의존하여 관리하고 있는지 확인 - 환경별 차이점을 빌드 타임 주입이 아닌 런타임 구성(Runtime Config)으로 분리 가능한지 검토 - 다수 플랫폼 배포 시 '단일 아티팩트, 다수 배포' 전략을 통한 배포 정합성 확보 방안 수립 - 플랫폼별 특화 기능의 제어를 위한 Feature Flag 시스템의 추상화 수준 설계

원문 읽기