Skip to main content

У чому філософія Trunk-Based Development?

Філософія Trunk-Based Development (TBD) - це ідея постійної і ранньої інтеграції, коли команда якомога частіше об'єднує зміни, а не відкладає це «на потім».

Простіше кажучи: «Інтегруйся рано, інтегруйся часто».


Ключова філософська ідея

Замість підходу:

«Спочатку довго робимо фічу в окремій гілці, потім зливаємо»

TBD каже:

«Маленькі зміни повинні потрапляти в спільну гілку постійно»


Основні принципи Trunk-Based Development

1. Мінімум розгалужень

  • одна головна гілка: main / trunk
  • немає довгоживучих feature-гілок
  • будь-які гілки - дуже короткі (години, максимум день-два)

Менше розходжень і конфліктів.


2. Маленькі й часті зміни

  • коміти маленькі
  • PR маленькі
  • зміни легко перевірити і відкотити

Проблеми знаходяться раніше і простіше.


3. Рання інтеграція замість пізнього merge

  • код інтегрується одразу
  • конфлікти ловляться швидко
  • команда завжди працює з актуальним кодом

Немає «пекельного merge наприкінці».


4. Стабільний trunk

  • main завжди повинен бути в робочому стані
  • зламати trunk - серйозна проблема
  • CI і тести - обов'язкові

5. Feature flags замість довгих гілок

  • незавершений функціонал ховається за флагами
  • код може бути в main, але вимкнений
  • реліз не блокується фічами

Швидкість без ризику.


Що Trunk-Based Development цінує найбільше

  • швидкий зворотний зв'язок
  • постійну інтеграцію
  • простоту
  • швидкість доставки змін
  • мінімальний ризик великих інтеграцій

Анти-ідея (чому TBD протистоїть)

  • довгоживучі feature-гілки
  • рідкі і великі merge
  • інтеграція «в останній момент»
  • великі релізи із сюрпризами

Коротке формулювання для співбесіди

Філософія Trunk-Based Development - це постійна рання інтеграція невеликих змін в одну основну гілку, щоб мінімізувати конфлікти, пришвидшити зворотний зв'язок і підвищити стабільність розробки.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.