다중 계정 환경을 위한 Git 브랜칭 전략 선택 DevOps - AWS 규범적 지침

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

다중 계정 환경을 위한 Git 브랜칭 전략 선택 DevOps

Amazon Web Services (기고자)

2024년 2월 (문서 기록)

클라우드 기반 접근 방식으로 전환하고 소프트웨어 솔루션을 제공하는 것은 혁신적일 AWS 수 있습니다. 소프트웨어 개발 라이프사이클 프로세스를 변경해야 할 수도 있습니다. 일반적으로 에서는 개발 프로세스 중에 여러 AWS 계정 개가 사용됩니다 AWS 클라우드. DevOps 프로세스에 맞는 호환 가능한 Git 브랜칭 전략을 선택하는 것이 성공에 필수적입니다. 조직에 적합한 Git 브랜칭 전략을 선택하면 개발 팀 간에 DevOps 표준과 모범 사례를 간결하게 전달할 수 있습니다. Git 브랜칭은 단일 환경에서는 간단할 수 있지만 샌드박스, 개발, 테스트, 스테이징, 프로덕션 환경 등 여러 환경에 적용할 경우 혼란스러울 수 있습니다. 환경이 여러 개 있으면 구현이 더 복잡해집니다. DevOps

이 가이드에서는 조직에서 다중 계정 프로세스를 구현하는 방법을 보여주는 Git 브랜칭 전략의 시각적 다이어그램을 제공합니다. DevOps 시각적 가이드는 팀이 Git 브랜칭 전략을 실제 사례와 통합하는 방법을 이해하는 데 도움이 됩니다. DevOps 소스 코드 리포지토리를 관리하기 위해 GitHub Gitflow, Flow 또는 Trunk와 같은 표준 브랜칭 모델을 사용하면 개발팀이 작업을 조율하는 데 도움이 됩니다. 또한 이러한 팀은 인터넷의 표준 Git 교육 리소스를 사용하여 이러한 모델 및 전략을 이해하고 구현할 수 있습니다.

에 대한 DevOps 모범 사례는 AWS AWS Well-Architected의 DevOps지침을 검토하십시오. 이 가이드를 검토하면서 실사를 통해 조직에 적합한 브랜칭 전략을 선택하십시오. 일부 전략은 다른 전략보다 사용 사례에 더 적합할 수 있습니다.

목표

이 가이드는 여러 AWS 계정조직을 대상으로 DevOps 분기 전략을 선택하고 구현하는 방법에 대한 설명서 시리즈의 일부입니다. 이 시리즈는 처음부터 요구 사항, 목표 및 모범 사례에 가장 잘 맞는 전략을 적용하여 경험을 간소화할 수 있도록 설계되었습니다. AWS 클라우드 DevOps 실행 스크립트는 조직에서 사용하는 지속적 통합 및 지속적 전달 (CI/CD) 엔진 및 기술 프레임워크에 따라 달라지므로 이 가이드에는 실행 가능한 스크립트가 포함되어 있지 않습니다.

이 가이드에서는 세 가지 일반적인 Git 브랜칭 전략인 플로우, GitHub 깃플로우, 트렁크 간의 차이점을 설명합니다. 이 가이드의 권장 사항은 팀이 조직 목표에 맞는 브랜칭 전략을 식별하는 데 도움이 됩니다. 이 가이드를 검토한 후 조직에 맞는 브랜칭 전략을 선택할 수 있을 것입니다. 전략을 선택한 후 다음 패턴 중 하나를 사용하여 개발 팀과 함께 해당 전략을 구현할 수 있습니다.

한 조직, 팀 또는 프로젝트에 효과가 있는 것이 다른 조직에는 적합하지 않을 수 있다는 점에 유의해야 합니다. Git 브랜칭 전략 중 선택은 팀 규모, 프로젝트 요구 사항, 공동 작업, 통합 빈도, 릴리스 관리 간의 원하는 균형과 같은 다양한 요소에 따라 달라집니다.

CI/CD 사례 사용

AWS 소프트웨어 릴리스 라이프사이클을 자동화하는 프로세스인 지속적 통합 및 지속적 전달 (CI/CD) 을 구현할 것을 권장합니다. 새로운 코드를 개발부터 프로덕션까지 가져오는 데 기존에 필요했던 수동 DevOps 프로세스의 대부분 또는 전체를 자동화합니다. CI/CD 파이프라인은 샌드박스, 개발, 테스트, 스테이징 및 프로덕션 환경을 포함합니다. 각 환경에서 CI/CD 파이프라인은 코드를 배포하거나 테스트하는 데 필요한 모든 인프라를 제공합니다. 개발팀은 CI/CD를 사용하여 코드를 변경한 다음 자동으로 테스트 및 배포할 수 있습니다. 또한 CI/CD 파이프라인은 개발팀을 위한 거버넌스 및 가드레일을 제공합니다. 기능 수용 및 배포에 대한 일관성, 표준, 모범 사례, 최소 허용 수준을 적용합니다. 자세한 내용은 지속적 통합 및 지속적 전달 실천을 참조하십시오. AWS

이 가이드에서 설명하는 모든 분기 전략은 CI/CD 관행에 매우 적합합니다. CI/CD 파이프라인의 복잡성은 브랜칭 전략의 복잡성에 따라 증가합니다. 예를 들어 Gitflow는 이 가이드에서 설명하는 가장 복잡한 분기 전략입니다. 이 전략을 위한 CI/CD 파이프라인은 규정 준수 등의 이유로 더 많은 단계가 필요하며 여러 개의 동시 프로덕션 릴리스를 지원해야 합니다. 브랜칭 전략이 복잡해짐에 따라 CI/CD를 사용하는 것도 더욱 중요해집니다. 이는 CI/CD가 개발팀을 위한 가드레일과 메커니즘을 설정하여 개발자가 의도적으로 또는 의도하지 않게 정의된 프로세스를 우회하지 못하도록 하기 때문입니다.

AWS CI/CD 파이프라인을 구축하는 데 도움이 되도록 설계된 개발자 서비스 제품군을 제공합니다. 예를 들어 AWS CodePipeline는 빠르고 안정적인 애플리케이션 및 인프라 업데이트를 위해 릴리스 파이프라인을 자동화하는 데 도움이 되는 완전관리형 지속적 전달 서비스입니다. AWS CodeCommit확장 가능한 Git 리포지토리를 안전하게 호스팅하고, 소스 코드를 AWS CodeBuild컴파일하고, 테스트를 실행하고, 소프트웨어 패키지를 생성하도록 설계되었습니다. ready-to-deploy 자세한 내용은 개발자 도구 on을 참조하십시오. AWS