Я работаю для небольшой однопроцессорной компании с одним клиентом, которая переходит на однопроцессорную компанию с несколькими клиентами. Несмотря на то, что у нас был только один клиент, у нас были разные проекты с разными датами доставки, но для каждого проекта мы смогли предоставить последний ежемесячный выпуск, который мы сохранили в отдельной ветки кода, вам пришлось доставить исправления ошибок для этой конкретной версии.
В последнее время мы приобрели ряд новых клиентов и возникла новая проблема: головная ветвь, как правило, решает (без нарушения функциональности) множество различных проблем, связанных с клиентом, и не все клиенты хотят все изменения, но предпочли бы предпочитают исправления и особенности вишни.
Есть ли у вас какой-либо опыт в этой ситуации и как справиться с этим практически без перегрузки при тестировании и работе (наши ежемесячные тесты выпуска занимают около 3-х дней компьютерного времени)? И контроль версий мудрый, как вам удается (я думаю, cvs, наконец, придется идти...)?