트렁크 기반 개발

in #kr-dev2 years ago

한 줄 요약#

개발자가 '트렁크'*라는 단일 분기에서 코드에 대해 공동 작업하는 소스 제어 분기 모델은 문서화된 기술을 사용하여 다른 장기 개발 분기를 생성해야 한다는 압력에 저항합니다. 따라서 그들은 병합 지옥을 피하고 빌드를 깨지 않고 행복하게 산다.

* 2020년부터 Git 커뮤니티의 메인master ( 이전에는 불미스러운 의미 포함)

메인라인/메인/트렁크의 공유 분기는 모든 릴리스 주기에서 좋지 않습니다.#

소규모 팀을 위한 트렁크 기반 개발:#

확장 트렁크 기반 개발:#

정교화, 주장 및 주의 사항#

트렁크 기반 개발은 지속적인 통합 및 확장 된 지속적인 전달 의 핵심 인에이블러입니다 . 팀의 개인이 변경 사항을 하루에 여러 번 트렁크에 커밋하면 모든 팀 구성원이 적어도 24시간마다 트렁크에 커밋해야 하는 지속적인 통합의 핵심 요구 사항을 쉽게 충족할 수 있습니다. 이를 통해 코드베이스는 항상 온디맨드로 릴리스할 수 있으며 지속적인 전달을 실현하는 데 도움이 됩니다.

소규모 팀 트렁크 기반 개발과 확장된 트렁크 기반 개발 사이의 구분선은 팀 규모와 커밋 속도 고려 대상입니다. 개발 팀이 더 이상 "소규모"가 아니라 "확장"으로 전환한 정확한 순간은 실무자 토론의 대상입니다. 그럼에도 불구하고 팀은 다른 사람(또는 봇)이 볼 수 있도록 커밋/푸시하기 전에 개발 워크스테이션에서 전체 "사전 통합" 빌드(컴파일, 단위 테스트, 통합 테스트)를 수행합니다.

클레임#

  • GitFlow 및 여러 장기 실행 분기를 특징으로 하는 기타 분기 모델 대신 트렁크 기반 개발을 수행해야 합니다.
  • 이러한 기능 분기가 수명이 짧고 한 사람의 제품인 경우 트렁크 커밋/푸시(v 소규모 팀) 또는 풀 요청 워크플로에 직접 수행할 수 있습니다.

주의 사항#

역사#

트렁크 기반 개발은 새로운 분기 모델이 아닙니다. '트렁크'라는 단어는 성장하는 나무의 개념과 관련이 있으며, 여기서 가장 뚱뚱하고 가장 긴 범위는 트렁크에서 방사되고 더 제한된 길이의 가지가 아니라 트렁크입니다.

90년대 중반 이후로 덜 알려진 분기 모델이었으며 80년대 이후 전술적으로 고려되었습니다. Google(언급한 대로) 및 Facebook과 같은 가장 큰 개발 조직은 이를 대규모로 실행합니다.

소스 제어 기술 및 관련 도구/기술에 대한 30년 이상의 다양한 발전 으로 인해 Trunk-Based Development가 더 많이(때로는 덜) 보급되었지만 많은 사람들이 수년 동안 고수해 온 분기 모델이었습니다.

이 장소#

이 사이트는 트렁크 기반 개발에 대한 모든 관련 사실, 이론적 근거 및 기술을 한 곳에서 함께 수집하려고 시도하며, 이를 설명하는 데 도움이 되는 25개의 다이어그램을 완성합니다. TBD를 약어로 사용하지 않고 모두~한 번~두 배.

https://trunkbaseddevelopment.com/

Sort:  

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.

You've got a free upvote from witness fuli.
Peace & Love!