Есть программа ( даже не программа, а комплекс состоящий из исходников, документации, тестов, примеров ну и т. д. )
Программа специфическая.
Для каждого клиента она немного разная. Для одного предположим десяток переменных, для другого есть ещё одиннадцатая и соответсвенно маленький кусочек, вставляемый в функцию специально для обработки одиннадцатой переменной. Для одного есть данный кусок файла Readme, для другого нет ну и т. д. Пока таких различий было мало и было мало клиентов, приемлемо было использование условной компиляции, но с возросшим числом клиентов и постепенным совершенствованием программы число #ifов возросло просто до неприличия и программа утратила читабельность и стало сложно её отлаживать.
К тому же не всегда можно "обновлять" программу у клиента. Т. е. нормальной является ситуация когда у одного клиента в программе остался баг (и не исправляется специально), у другого данный баг исправлен и добавлен десяток новых свойств. Но в общих чертах программа одна и развивается как единое целое. Поддерживать надо обоих. Специфика области.
Дерево держит CVS.
Вопрос: какие есть альтернативы условной компиляции для такой ситуации? Какие (желательно проверенные временем) варианты можно использовать?
Как в рамках одного дерева исходников поддерживать несколько версий программы одновременно? Причём с минимальной разницей в одну строку кода?
Ответ на:
комментарий
от aton
Ответ на:
комментарий
от ksicom
Ответ на:
комментарий
от nblx
Ответ на:
комментарий
от ksicom
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум одна программа и разные версии libc (2005)
- Форум flatpak разные версии одной и той же программы (2021)
- Форум Параллельная установка одной программы (разных версий) в системе (2006)
- Форум Установка разных версий одной библиотеки (2012)
- Форум разные версии gcc на одной машине (2018)
- Форум [DHCP] Разные ip разным клиентам (2012)
- Форум Разный шлюз для разных клиентов. (2012)
- Форум Postgresql разных версий (2009)
- Форум Разные версии Ghostscript (2019)
- Форум [Mercurial] разные версии (2008)