Как уже указывал Aloc, вы никогда не должны делиться репозиторием на file://
. Руководство Subversion: very firmly against this .
Существует несколько причин: вы предоставляете пользователям прямой доступ к файлам репозитория, что означает, что они могут непосредственно ими манипулировать. Есть проблемы с правильной работой крючков. И почти нет защиты от двух человек, которые делают одновременные изменения в репозитории, так как сам клиент svn непосредственно манипулирует макетом сервера. Плохая плохая идея.
Это особенно верно, поскольку настройка svnserve
настолько проста в настройке. Вы даже можете установить svnserve
как Windows Service. Единственная возможная проблема заключается в том, что ваш порт маршрутизатора или брандмауэра 3620 (порт Subversion svnserve по умолчанию).
Вот как настроить svnserve
:
- Создать репозиторий (у вас уже есть).
- Редактировать файл
$REPO_HOME/conf/svnserve.conf
. Вы хотите изменить строку # 20, чтобы установить password-db = passwd
(или любую другую базу данных паролей).
- Редактировать файл
passwd
для настройки учетных записей. Это в основном account_name = password
. В файле есть комментарий, показывающий вам, как это сделать.
- Запустить
svnserve
вручную или в качестве службы Windows.
И это в значительной степени. Это занимает около 10 минут работы.
Если вы действительно хотите получить фантазию, вы можете использовать Apache httpd. Тем не менее, это связано с установкой и настройкой Apache httpd, который может быть немного сложным в системе Windows - особенно если вы не знакомы с настройкой Apache. Тем не менее, есть step-by-step directions, и они не слишком сложны для подражания. Преимущество состоит в том, что это выполняется через порт 80, который с меньшей вероятностью блокируется портом 3620, и вы можете использовать свой Windows Active Directory для Subversion authentication .
Однако существует несколько серверов Subversion на базе Windows, таких как [http://www.visualsvn.com/server/licensing/], которые упрощают настройку Apache, но для получения доступа к LDAP вам необходимо заплатить за Pro упаковка. Вы также можете посмотреть CollabNet's package. Это бесплатно, но гораздо больше сканируйте собственное решение.
1. См самый последний абзац на этой странице.
2. Возможно использование svnserve
с конфигурацией LDAP/Windows Active Directory через SASL, но я никогда не видел, чтобы он использовался. Возможно, потому, что те, кто хочет использовать LDAP/Windows Active Directory, уже знают, как настроить все через Apache httpd.
Любые ссылки? Это не совсем так: * Хранение репозитория на общем ресурсе UNC может привести к потере или повреждению репозитория, делает любые скрипты с крючками в лучшем случае и дает вам нулевую безопасность внутри самого репозитория. * – bahrep
Это правда. Я добавил ссылку на руководство, где эта практика не поощряется и почему. – alroc
Сохранение репозиториев на сетевом ресурсе и предоставление их через Apache HTTP Server - довольно распространенная и действительная конфигурация. Я предлагаю не об этом, потому что ваш ответ выглядит так: «В любом случае не сохраняйте свои репозитории на сетевом ресурсе». – bahrep