Это своего рода теоретический вопрос, но я также хотел бы его реализовать.
У меня есть проект, и этот проект по сути является основным исходным кодом, и любые новые функции будут добавлены в этот проект. и будет скопирован в «детей» этого проекта. Поэтому, если появится клиент А, мы скопируем основной источник с последними функциями. Затем, если Заказчик B хочет использовать систему, мы берем последнюю версию основного источника (в которой, возможно, были встроены другие новые функции). Таким образом, мы будем строить основной источник каждый раз.
Тем не менее, я хотел бы иметь возможность объединять функции и в другие версии клиентов, чтобы они могли иметь новейшие функции, если потребуется. Не совсем уверен, хороший подход или инструменты, чтобы помочь с этим. Решит ли ветвление эту проблему?
Это веб-система ASP. Net MVC, использующая старую версию TFS (2010), но использующая последнюю версию Visual Studio (2019)
Пример:
Main Code
------------------------------------------------------------------------
| | |
|Customer A | |
|New Feature Added to Main Code |
|Customer B
Итак, в этом примере, к которому присоединяется Клиент А, мы берем копию базы кода. Затем добавляются некоторые новые функции, а затем Заказчик B получает новейшую кодовую базу, включающую самые последние и самые лучшие.
Заказчик A узнает об удивительных новых функциях и хочет получить к ним доступ. Вот где стратегия начинает размываться ... как бы разработчик мог внедрить новейшие функции в базу кода без копирования и вставки различных файлов?