Есть программа ( даже не программа, а комплекс состоящий из исходников, документации, тестов, примеров ну и т. д. )
Программа специфическая.
Для каждого клиента она немного разная. Для одного предположим десяток переменных, для другого есть ещё одиннадцатая и соответсвенно маленький кусочек, вставляемый в функцию специально для обработки одиннадцатой переменной. Для одного есть данный кусок файла Readme, для другого нет ну и т. д. Пока таких различий было мало и было мало клиентов, приемлемо было использование условной компиляции, но с возросшим числом клиентов и постепенным совершенствованием программы число #ifов возросло просто до неприличия и программа утратила читабельность и стало сложно её отлаживать.
К тому же не всегда можно "обновлять" программу у клиента. Т. е. нормальной является ситуация когда у одного клиента в программе остался баг (и не исправляется специально), у другого данный баг исправлен и добавлен десяток новых свойств. Но в общих чертах программа одна и развивается как единое целое. Поддерживать надо обоих. Специфика области.
Дерево держит CVS.
Вопрос: какие есть альтернативы условной компиляции для такой ситуации? Какие (желательно проверенные временем) варианты можно использовать?
Как в рамках одного дерева исходников поддерживать несколько версий программы одновременно? Причём с минимальной разницей в одну строку кода?


Ответ на:
комментарий
от aton

Ответ на:
комментарий
от ksicom

Ответ на:
комментарий
от nblx

Ответ на:
комментарий
от ksicom

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Разный шлюз для разных клиентов. (2012)
- Форум [DHCP] Разные ip разным клиентам (2012)
- Форум Клиент поддерживающий расширенные статусы (2007)
- Форум Клиенты из разных стран (2013)
- Новости Эти разные тонкие клиенты (2004)
- Форум Почта + разные mail-клиенты (2004)
- Форум Картинки в Web: разным клиентам - разное качество (2017)
- Форум Какой торрент клиент поддерживает скриптинг ? (2012)
- Форум Разный пинг до разных IP одной машины (2010)
- Форум VPN разные параметры для клиентов (2006)