Trunk-based development (розробка в основній гілці)
Коротко: За trunk-based development усі розробники працюють в одній спільній основній гілці й зливають лише дуже короткоживучі гілки, часто протягом дня.
Докладніше: Протилежність — довгі гілки функцій, які днями розходяться й закінчуються болісними злиттями.
Подробиці
- Правила: Невеликі зміни, часта інтеграція, основна гілка завжди працює.
- Прапорці функцій (feature flags): Незавершені функції постачаються за перемикачем, вимкненими. Так розділяють розгортання й увімкнення.
- Передумови: Швидкі автоматичні тести, безперервна інтеграція та код-рев’ю, що не триває днями.
- Переваги: Менше конфліктів злиття, швидший зворотний зв’язок, простіші релізи.
- Недоліки: Вимагає дисципліни та доброго покриття тестами. Великі перебудови треба розбивати на малі кроки («branch by abstraction»).
- Відмінність: GitFlow з гілками
develop, релізів і хотфіксів трудомісткіший і більше підходить ПЗ із фіксованими версіями.
Див. також: git rebase