Подождите ... Вы можете получить доступ к своему хранилищу через http://
?Почему бы не позволить другим получить доступ к хранилищу, используя http://
?
Не делайте ничего с вашим маршрутизатором.Не гадите с портами.Apache httpd прекрасно обслуживает ваш репозиторий вне порта 80. Скажите своим пользователям, чтобы они просто получали доступ к вашему репозиторию через http://<machineName>/svn/repos
.Вот и все, что нужно.
svn://
- это совершенно другой протокол, чем http://
.Порт 3690 просто является портом по умолчанию svn://
, но это не значит, что если вы перенаправите свой протокол http://
туда, все будет работать.
В большинстве случаев люди, которые впервые используют Subversionустановите сервер svnserve
вместо Apache httpd, потому что это проще, чем использование Apache http.Вот как вы настраиваете репозиторий для использования svn://
:
$ svnadmin create my_repos #
$ vi my_repos/conf/svnserve.conf #Need to denop 'password-db=passwd' line
$ vi my_repos/conf/passwd #Need to setup user accounts
$ svnserve -r my_repos -d
И это все.Теперь ваши пользователи могут получить доступ к хранилищу через svn://<machineName>
.
Хотя svnserve проще и проще, чем Apache (и быстрее), есть много причин использовать Apache httpd вместо svnserve:
- Скорее всего, порт 80 не заблокирован сетью, а порт 3690, возможно, заблокирован
- Вы можете разрешить Apache httpd использовать LDAP для аутентификации (что также может разрешить аутентификацию Windows Active Directory)
- Apache httpd может обслуживать несколькорепозитории, в то время как
svnserve
может обслуживать только один репозиторий через порт 3690.