Может быть сделано. Браузеры не могут получить доступ к файловой системе клиентского компьютера.
Не может помочь с литературой, но ветвление для конкретного заказчика является плохой идеей. Там, сделанный это. Отладка материала была чиста черт, из-за курса, необходимо было иметь все те версии для конкретного заказчика в наличии для репродуцирования ошибки... некоторое время спустя, компания должна была сделать, полное переписывает приложения, потому что кодовая база стала совершенно неудобной в сопровождении. (Перемещение частей для конкретного заказчика в конфигурационные файлы так каждый клиент было на той же строке кода.)
Не идите туда.
Я обычно согласовываю, издержки для обработки клиентских мер высоки, но я не сказал бы, не делают этого.
Я сказал бы, заряжают клиента рука и участок (и их некоторые), если они хотят так много внимания. Иначе не делайте клиентских ответвлений.
Вы описываете изменения, которые входят в клиентское ответвление, как "фиксирует". Поскольку они - меры, я предполагаю, что они будут также сделаны в соединительной линии и являются действительно просто усовершенствованными доставками будущих исправлений ошибок. Если это верно, почему не только создают новый "servicepack" (от вопроса: major.minor.servicepack), и дают ту версию клиенту.
В моих перемещениях я лично не видел определенной литературы для большинства хороших методов, хотя я подозреваю, что существует много материала там.
Числа версий обеспечивают действительно простой механизм для скрепления определенных версий во вне себя от определенных наборов изменений кода. Технически, не имеет значения, сколько уровней находится в номере версии, пока разработчики прилежны в обеспечении что для каждой "уникальной" выпущенной версии, существует "уникальный" номер версии.
Логика диктует, что для ограничения затрат на поддержку (которые огромны, часто хуже затем разработки), разумная организация предпочла бы иметь наименьшее количество количества "уникальных" версий, обтекающих в поле. Можно было бы быть потрясающим, однако в реальном мире обычно существуют довольно многие. Это - стоимость по сравнению с проблемой удобства.
Обычно, первое число указывает, что этот ряд выпусков не обратно совместим. Следующее число говорит, что это главным образом, но несколько вещей изменились, и последнее число говорит, что некоторый материал был зафиксирован, но документы все сохраняются. Используемый тот путь, Вам не нужно четвертое число даже при выполнении некоторых определенные меры по требованию подмножества клиентов. Выбор стать более управляемым клиентами не должен иметь никакого эффекта на Вашу нумерацию (и таким образом это - плохая идея).
Ветвление на основе клиентских запросов является абсолютным безумием. Одна основная соединительная линия важна, таким образом, каждый раз Вы переходите, она создает крупный технический долг. Перейдите достаточно, и Вы больше не можете позволить себе интерес.
Не уверенный в литературе, но... если существует даже шанс, что Вы поддерживаете ориентированные на клиента меры, кажется разумным, по крайней мере, иметь в распоряжении стратегию ветвления и управления версиями. Хотя я надеялся бы на стратегию никогда не использоваться.
Я предполагаю, что опасность - Вы, заканчиваются с культурой, где ориентированные на клиента меры становятся acceptible и нормой, вместо того, чтобы решить истинную проблему, которая привела к потребности в фиксации.
Я предполагаю, что реальная стоимость будет в основном зависеть от ли ее просто временное исправление ошибки для угождения клиенту до следующего выпуска или ли его больше одноразового удовлетворения требованиям заказчика. Если бы это - просто первый, и количество не слишком высоко, я не был бы слишком взволнован. Однако, если его удовлетворение требованиям заказчика я боялся бы глупый.
Если можно найти способ скомпилировать один продукт и включить функции каждого клиента вкл\выкл в их "конфигурации" центральной сборки, которая могла бы быть чем-то стоящим выяснить.
Что-то вроде этого могло бы лучше всего быть сделано посредством основанной на профиле/конфигурации/роли установки.
Вам, вероятно, придется защитить один набор настроек клиента от другого, или возможно они могут все извлечь выгоду из него. Та часть ваше дело.
Таким образом, можно создать пользовательские представления, пользовательские коды, пользовательские роли, пользовательский код, безотносительно. Но, они - часть одного проекта.
Не поддерживайте несколько кодовых баз того же продукта любой ценой. Я сделал это однажды, и выполнение изменения часа занимает по крайней мере 1 час для каждой системы, если это находится в худшем месте. Это - самоубийство.
Действительно совместно используйте то, что Вы заканчиваете тем, что делали!