Feature branch

Привіт друзі! Минулого року (ага, час актуальних новин 😁) ми з Мішою консультували одну команду тест автоматизаторів. І, серед іншого, звернули увагу, що значну частину свого часу вони витрачають на роботу з репозиторіями – всі комітять в мастер, постійні конфлікти та мерджі, щось десь відвалюється. Кожну нову версію тестів їм простіше було створити новий репозиторій і почати все з нуля, ніж постаратись розгребти існуючий 🙀

Скажу чесно, в мене ніколи таких проблем не було. З іншого боку, ніколи не писав автотести в команді з 20+ людей.

✅ Тож перше, що ми їм запропонували – робити feature branch. Я думав, штука очевидна, але може не для всіх. Ідея в тому, що коли ви беретесь автоматизувати свої тести, ви робите в репозиторії окрему гілку (branch) – і всі зміни робите в ній. Коли ваші зміни готові та протестовані, ви забираєте всі останні зміни з мастеру та мерджите в свій бранч. Вирішуєте конфлікти, тестите ще раз і лише після цього готовий код мерджите назад в мастер. Все. Фіча готова. І нічого не ламає. Ваші колеги, в свою чергу, роблять те саме. PROFIT

✅ Друга рекомендація була – ставити теги. Замість того, щоб створбвати новий репозиторій для кожної нової версії проєкту, можна ставити для кожного релізу тег з версією, наприклад 1.3.127 (що може відповідати версії продукта, щоб ви знали, яка версія тестів до якої версії продукту відноситься). Після чого можна продовжувати працювати зі своїм репозиторієм.

До речі, якщо почитати патерни управління вихідними кодами – то їх є багато. Якими користуєтесь ви? Чи були у вашій практиці цікаві (та не дуже) історії (як от в моєму минулому – залочив розробник файли на зміну в TFS та пішов у відпустку…)

P.S. А ще хочу похвалитись – купив собі графічний планшет, буду намагатись малювати ілюстрації до постів самотужки. Як вам?

Tags: ,
16 February 2021
Автор: 
Oleksii Ostapov

Leave a comment

Leave a Reply