Это возможно, но не обязательно просто: проблема, которую вы пытаетесь решить, опасно близка к настройке распределенной среды разработки, которая не совсем подходит для SVN.
СВН-зеркальный путь
Вы можете использовать svn mirror
, как описано в документации по SVN, для создания только для чтения зеркала вашего главного репозитория. Каждый из ваших разработчиков взаимодействует с ближайшим к ним зеркалом. Однако пользователи подчиненного хранилища должны будут использовать
svn switch --relocate master_url
прежде чем они смогут совершить коммит, и они должны будут помнить, чтобы переместить обратно на раба, как только они закончили. Это можно автоматизировать с помощью сценария-обертки вокруг команд изменения репозитория в SVN, если вы используете клиент командной строки. Имейте в виду, что операция перебазирования при быстром добавляет немного накладных расходов. (И будьте осторожны, чтобы дублировать UUID хранилища - см. документация SVN .)
[Правка - Проверка документации TortoiseSVN кажется, что TortoiseSVN может выполнять сценарии перехвата на стороне клиента . На этом этапе вы можете создать сценарий фиксации до / после. Либо так, либо попробуйте посмотреть, можете ли вы использовать интерфейс автоматизации TortoiseSVN для этого].
Путь СВК
svk - это набор сценариев Perl, которые эмулируют службу распределенного зеркалирования через SVN. Вы можете настроить его так, чтобы локальная ветвь (зеркало) использовалась несколькими разработчиками. Тогда основное использование для разработчиков будет полностью прозрачным. Вам придется использовать клиент svk для сбора, объединения и запуска вишни. Это выполнимо, если вы можете разобраться в распределенных концепциях.
git-svn way
Хотя я никогда не использовал это сам, вы могли бы также, чтобы удаленные разработчики использовали git локально и использовали шлюз git-svn для синхронизации.
Заключительные слова
Все зависит от вашей среды разработки и требуемого уровня интеграции. В зависимости от вашей IDE (и если вы можете изменить SCM ), вы можете взглянуть на другие полностью распределенные SCM (подумайте Mercurial / Bazaar / Git / ...), которые поддерживают распределенную разработку из коробки.