トランクベースの開発が最良の分岐モデルである理由。アンドレイ・アレクサンドロフ



DORAのStateOf DevOps 2018では、トランクベースの開発を使用している高性能企業が見られます。なぜそれが正確なのか、このモデルの長所と短所は何かを理解しましょう。





こんにちは!私の名前はアンドレイです。私はDevOpsコンサルタントです。私はExpress42で働いており、DevOpsDeflopeポッドキャストをホストしています。そして今日はトランクベースの開発についてお話します。



これは非常に複雑なことです。その背後にあるすべての概念とアイデアを10分で説明できるかどうかはわかりません。





? : , :





, .





- . , , . Trunk Based Development .





Trunk Based Development?



:



  • . , ( ), . , Trunk . , , , .
  • Feature Flags Branch By Abstraction. .
  • Continuous Code Review.
  • , , . – release ready , .




. ?



Feature Flags. .



Feature Flags? , , , . Feature Flags. , , . A/B , .





- ?



  • , .
  • A/B .
  • .


, . ? pull request. , . . , . . Trunk , Feature Flags .





. . . .



? , .



, , « » « ». , - -. , , .



Trunk ?



  1. pull request . , , . . pull request, .
  2. pull request. . . pull request. . pull requests , . Feature Flags, .
  3. . . , . . pull request’ .
  4. prod Feature Flags , .
  5. pull request’ .


, , . pull requests . . , Trunk .





?



  • . continuous integration , , . , . . , .
  • . , . , .
  • . , , - , , , . . pull request , . 5 , , .


, , Continuous Review.





  • ? , , pull request. - . , , . . . .
  • pull requests , . review . . . pull request , - , - , .
  • trunkbaseddevelopment.com , 10 pull request, . . 10 , . , .
  • pull request , , - . - .




  • review . , . , . . , 10 , .
  • . , review , . , , .
  • . pull request . , prode .




- . Trunk. , Git Flow GitHub Flow, , , Trunk Based Development . , .



  • -, , . , - , .
  • Feature Flags . , , . …, Ansible- . ., .
  • Branch By Abstraction , .


, , . SOLID‑. SOLID, , , . SOLID : « , -». , , .





, , , ?



:



  • . , , prode, .
  • . , - , . .
  • Continuous review, .
  • .




:







! , , , . . Git Flow . Git Flow , Trunk Based? ?



. Trunk Based Development . Branch By Abstraction, Short-Lived Branches. -, . - – . . , . .



, pull request . TeamLead, Branch. pull request, ? ?



-. , . , pull requests TeamLead – , , .



. . -?



. , . - , review, . . , . .



! ! ? , ?



. . SOLID, , . , , - . .



Feature Flags? overhead , ?



, , , prod .



overhead? , .



. . ? , ?



, , .



, . . .



, «if », . Also – . , . - overhead, if, , .



! . Trunk Based Development .



.



, . SVN. Trunk. pull request, Trunk. . . : « Git Flow, Trunk Based – - ». , Git. SVN, Git. Git. . Trunk Based Development . . , Trunk, , ? . . Short-Lived Branches , Branch By Abstraction, ?



– ?



, – - - .



. Branch By Abstraction, Commit By Abstraction ?



.



- , -.



Trunk - , .



. trunkbaseddevelopment.com, , , . , . , .



! ! (Branch By Abstraction feature branch). , . 4- ? - , .



. , , . -. , , Fowler, , , abstraction layer layer . Trunk Based Development, . , – . - . . . , , - .



Code Review. , junior- , Code Review 10 PR . , . ? juniors ?



?



junior , . . , , - pull request. , pull request 10 , . . 10 , , . ?



junior . 10 – . , . , Junior . , . .



? . . , 50 150 , ? , . - , - , . , , . , - Feature Flags, , ? . , .



. , , .



, .



. , . , . , . ? , . pull request , , . , . , , - -. , - pull request, , - .



調査したかったのを思い出しました。ここまでトランクのことを聞いたことがある手を挙げてください。悪くはない、ほぼ3分の1。そして、誰が彼らのプロジェクトでそれを使用しますか?4人。



私たちは同じ会社にいます。



ああ、あなたは同じ会社にいます、いいでしょう。優れた。




All Articles