У нас є хтось (назвемо його Тедом), який відповідає за тестування нових функцій та виправлення помилок.
Ми використовуємо Git та GitHub . master
має бути / завжди розгортається і development
саме там ми здійснюємо / об’єднуємо нові функції чи виправлення помилок, але лише після того, як вони пройшли перевірку Тедом.
Проект знаходиться в PHP.
Я хотів би, щоб процес тестування пройшов так:
- Розробник хоче працювати над новою функцією (скажімо, функція / помилка №123, як Тед задокументований у трекері випусків), тому він переходить
origin/development
доdevelopment
свого локального сховища та створюєissue-123
звідти нову гілку (скажімо ). - Як тільки він задоволений своєю роботою, він бере на себе і підштовхує свою нову гілку до
origin
. - Тед підключається
test.ourproject.com/choose-branch
і бачить список гілокorigin
і вирішує його ввімкнутиissue-123
(це потрібно зробити через веб-сторінку). Потім він продовжуєtest.ourproject.com
, випробовує веб-додаток (він справді безглуздий), і після деяких розробок з розробником він задоволений функцією. - Тед каже розробник , що він може зливатися
issue-123
наdevelopment
наorigin
. - Промийте і повторіть.
На третьому кроці я міг би зламати щось, що виконує завдання (показ і перемикання гілок з певної сторінки), але я відчуваю, що те, що я описав, є дуже поширеною схемою.
Отже, моє запитання: чи це хороший / стійкий / постійний робочий процес для розгалуження? Чи можете ви створити резервну копію своєї відповіді, наводивши приклади інших проектів, що слідують за цим робочим процесом?
issue-123
посилання на помилку / функцію # 123, оскільки Тед документує кожну помилку / нову функцію в нашому трекері випусків.