Несколько версий проекта в одном решении? - PullRequest
1 голос
/ 25 марта 2019

У меня есть продукт с несколькими клиентами.В настоящее время этот продукт одинаков для всех с точки зрения внешнего вида и функциональности. Мне нужно реализовать несколько новых функций, называемых бета-функциями, и сделать их доступными только для некоторых из моих клиентов, остальные клиенты будут использовать старыеверсия и их запросы на обслуживание будут также выполнены.Я не хочу дублировать все решение для этого.Каков наилучший подход к этой проблеме?Поддерживает ли решение с visual studio configuration manager и #if единственный путь?

1 Ответ

2 голосов
/ 25 марта 2019

Если бета-функции планируется окончательно развернуть для всех клиентов, это звучит как проблема ветвления контроля версий. С современной системой контроля версий, такой как Git, вы можете создавать бета ветви , чтобы обрабатывать различные пути разработки.

Пока ваша основная ветка разработки продолжается во время сопровождения, вы можете создавать ветви функций, в которых вы внедряете бета-функции для определенных клиентов и, наконец, объединяете их с основной веткой.

Если вы попытаетесь решить эту проблему в одной ветке с помощью #iffing вашего исходного кода, вы выбрали сложный путь, который подвержен ошибкам и который трудно масштабировать.

...