Вопрос

Я никогда раньше не использовал какой-либо контроль версий, хотя понимаю концепцию. Что меня смущает (и, возможно, я просто не знаю), какую выгоду я получу и / или почему я хочу настроить Subversion и Apache? Нужно ли мне настраивать его с помощью Apache, чтобы иметь возможность доступа к моим репозиториям с других компьютеров по сети? Пожалуйста, не стесняйтесь предоставить любые другие детали, которые вы считаете актуальными?

В настоящий момент у меня есть настройки для ноутбука (Windows & nbsp; XP Pro) и виртуальной машины (Windows & nbsp; XP Pro). На моей виртуальной машине у меня установлены Apache 2.2, MySQL 5 и PHP 5. Эта настройка - моя главная задача, хотя я рад слышать примеры / ситуации, которые отличаются от моего сценария.

Это было полезно?

Решение

Нет необходимости настраивать Subversion с Apache. Я использовал Subversion в течение многих лет, и мне никогда не приходилось это делать (хотя есть причины, по которым вы должны это делать, в основном это связано с инфраструктурой аутентификации). Поскольку вы находитесь в мире Windows, я видел, что Сервер VisualSVN очень рекомендуется и Легко просто настроить и перейти.

Другие советы

Преимущество размещения вашего SVN-репозитория через Apache вступает в действие, если вы хотите, чтобы ACL-репозиторий был в вашем репозитории.

Вы можете настроить базовую аутентификацию и ограничить разрешения для каждого каталога (или файла, если вы чувствуете необходимость). Например, вы можете настроить хранилище таким образом, чтобы разрешить гостевую проверку, но для любой записи в хранилище потребуется определенный, действительный пользователь.

Результат использования Apache для аутентификации ваших пользователей означает, что вам не нужно определять своих пользователей в .htpasswd. Apache может подключиться к LDAP, большинству SQL-серверов любого типа или даже использовать аутентификацию Kerberos.

Использование упрощенного svnserve вполне может быть достаточно. Однако детальные разрешения не могут быть применены, и вы не сможете подключиться к другой пользовательской базе данных для аутентификации.

Но, по вашему описанию, все вышеперечисленное может быть излишним. Преимущества, предлагаемые Apache, в основном бесполезны для одного пользователя и не стоят хлопот.

Я думаю, что вы попадаете в ситуацию, когда хотите использовать протокол WebDAV для доступа к вашему репозиторию SVN. В этом случае вы в основном разрешаете Apache обрабатывать доступ к файлам как посредник для самого SVN (без прямых подключений к хранилищу).

Я слышал, это работает довольно хорошо, но есть несколько альтернатив. Взгляните на книгу SVN (проверьте Google) для начала.

Мы используем Subversion в среде небольшой команды (6 человек), используя репозиторий Visual SVN. Изначально у нас не было веб-сервера Apache, только IIS, но теперь мы также запускаем Apache, но нет веских причин использовать Apache для хранилища.

Используя Apache, вы можете получить доступ к своему хранилищу через WebDAV, то есть через HTTP на стандартном порту, так что вы можете получить доступ / опубликовать свое хранилище, например, через корпоративный брандмауэр, который может не разрешать svnserve порт.

SVN может быть системой клиент-сервер, если вы хотите поделиться своим кодом с другими людьми. Однако, если вы хотите работать с одним кодом (даже с более чем одного компьютера!), Вам вообще не нужен какой-либо сервер!

Вы можете использовать файл: // - сборка протокола почти для всех клиентов SVN и локального репозитория SVN.

Ваш SVN-репозиторий также может работать с сетевого ресурса. Однако вы должны использовать этот подход только , если вы работаете над ним в одиночку!

Вам не нужно использовать Apache. Там есть собственный сервер - вместо него можно использовать svnserve.exe. По умолчанию он работает на порту 3690, но его можно настроить на другой порт с помощью переключателя - port при его настройке.

Грег Хьюгилл дал вам ссылку, которая сообщит вам, какую версию сервера Subversion использовать, и различные варианты использования. В основном это сводится к svnserve , если вам не нужно интегрироваться с какой-либо аутентификацией. Используйте Apache, если вам нужны более сложные сценарии.

У меня есть коммерческая консоль Windows, которая обрабатывает svnserve. Мой профиль имеет ссылку, чтобы увидеть эту утилиту. Если вы решите использовать Apache, я рекомендую использовать сервер VisualSVN .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top