Ветвь SVN / процесс слияния для источника AspDotNetStorefront
Хотите знать, если бы у людей была рекомендация о том, как управлять ветвлением и слиянием, как мы "хотим" обрабатывать настройки для нашего использования AspDotNetStorefront. По сути, мы периодически получаем обновления AspDotNetStorefront, и нам необходимо применять настройки на двух уровнях: глобальные настройки и настройки клиента. Допустим, у нас есть простой пример:
- AspDotNetStorefront настроен в SVN
- AspDotNetStorefront разветвляется на AspDotNetStorefront_v1.0
- AspDotNetStorefront_v1.0 разветвляется на AspDotNetStorefront_v1.0_Cust
- AspDotNetStorefront_v1.0_Cust модифицируется изменениями и фиксируется
- AspDotNetStorefront_v1.0_Cust разветвляется на ClientA_v1.0, где вносятся дополнительные изменения
- AspDotNetStorefront_v1.0_Cust разветвляется на ClientB_v1.0, где вносятся дополнительные изменения
Это по сути, где мы находимся сегодня. Теперь, если выйдет версия 2.0 AspDotNetStorefront, мы не уверены, что делать. Я хотел бы сделать следующее, но я не уверен:
- Разветвите AspDotNetStorefront в AspDotNetStorefront_v2.0, наложите новый исходный код, подтвердите
- Филиал AspDotNetStorefront_v2.0 в AspDotNetStorefront_v2.0_Cust
- Объединить AspDotNetStorefront_v1.0_Cust с AspDotNetStorefront_v2.0_Cust, протестировать, настроить, зафиксировать
- Филиал AspDotNetStorefront_v2.0_Cust to ClientA_v2.0
- Слияние ClientA_v1.0 с ClientA_v2.0, тестовая настройка, фиксация
- Повторите последние два шага для ClientB
Я полностью вне базы? В первый раз мы попытались интегрировать код производителя в наши структуры SVN, где код производителя фактически изменен (в отличие от простого подключения или подключения). Любые ссылки на документацию будут полезны. Кроме того, я могу просто не знать терминологию этого типа модели для ее поиска, поэтому, если есть термины для этого вида деятельности, которые также будут полезны.
Спасибо!
1 ответ
То, что у вас есть сегодня, выглядит...
AspDotNetStorefront
---> AspDotNetStorefront_v1.0
---> AspDotNetStorefront_v1.0_Cust [*]
---> ClientA_v1.0 [*]
---> ClientB_v1.0 [*]
Я полагаю, вы хотели бы сохранить AspDotNetStorefront_v2.0
, Cust
а также Client*
ветви; Это, кажется, очень сложная ситуация для управления... Ответ зависит от факта
Величина изменения от AspDotNetStorefront_v1.0
в AspDotNetStorefront_v2.0
больше или дельта между Cust
а также Client*
ветви?
Вы должны выбрать исправление минимальной части работы, так как тогда слияние будет проще и проблем регрессии можно избежать.
AspDotNetStorefront
---> AspDotNetStorefront_v1.0 + (Upgrade Code to v2.0)
---> AspDotNetStorefront_v1.0_Cust + Upgrade Code to v2.0
---> ClientA_v1.0 + Upgrade Code to v2.0
---> ClientB_v1.0 + Upgrade Code to v2.0
Поскольку кажется, что вам нужно сохранить все эти ветви нетронутыми, так что это структура, с которой вы в конечном итоге.