[Git] GitLab-flow

jinnnny·2024년 1월 11일
1

Git

목록 보기
4/7

GitLab-flow

"GitLab Flow"는 GitLab을 사용하는 프로젝트에서 적용되는 브랜치 전략 중 하나입니다. GitLab Flow는 간단하면서도 효과적인 개발 프로세스를 지향하며, 다양한 기능들을 통합하여 사용할 수 있습니다.


GitLab-flow 브랜치 구조

1. Master 브랜치

  • gitlab flow의 master 브랜치 역할은 git flow의 develop 브랜치와 동일합니다.
  • master 브랜치는 feature 브랜치에서 병합된 기능에 대해 테스트를 진행합니다.
  • 전체적인 테스트가 진행되어 기능에 대한 보장이 되었다면 production 브랜치로 머지합니다.
  • 만약 staging 단계를 원한다면 pre-production 브랜치로 머지를 진행합니다.

2. Feature 브랜치

  • 특정한 기능(단위 기능)을 구현하는 브랜치입니다.
  • 기능 구현이 완료되면, master 브랜치로 PR(Pull Request)을 날립니다. merge 되면 브랜치는 삭제됩니다.

2. Production 브랜치

  • gitlab flow의 production 브랜치 역할은 git flow의 master 브랜치와 동일합니다.
  • 테스트가 끝난 기능에 대해 배포를 하기 위한 브랜치입니다.

3. Pre-Production 브랜치

  • 배포 전에 제품을 테스트 (QA, 품질검사) 하는 브랜치입니다.
  • 테스트가 정상적으로 완료되면, production 과 master 에 각각 PR(Pull Request)을 날립니다.

PR(Pull Request)란?
Pull Request는 사용자가 원격 저장소에 Push하여 새로운 사항이 적용됬을 경우, 다른 사용자에게 푸쉬된 상황을 알리는 것을 말한다. 이를 줄여서 PR이라고도 한다.


GitLab-flow 장단점

1. 장점

  • GitLab Flow는 간단하고 직관적인 워크플로우를 제공합니다. 주요 브랜치와 명시적인 브랜치 종류를 사용하여 개발 프로세스를 이해하기 쉽게 만듭니다.
  • GitLab은 내장된 CI/CD 파이프라인을 제공하므로 빌드, 테스트, 배포 등을 자동화할 수 있습니다. 이를 통해 안정적인 배포와 빠른 피드백을 얻을 수 있습니다.

2. 단점

  • GitLab Flow는 비교적 간단한 프로세스를 제공하므로, 대규모 프로젝트에서는 팀 간의 협업과 관리가 어려울 수 있습니다.
  • GitLab Flow는 특히 지속적인 배포가 강조되는 환경에서 효과적이지만, 프로젝트의 특성에 따라 다른 브랜치 전략이 더 적합할 수 있습니다.

[참고]

0개의 댓글