2012-01-22 4 views
0

Я установил subversion и apache на свой компьютер. Я могу получить доступ к моему хранилище с помощью followinf URLSVN: удаленный доступ не работает

http://localhost/svn/repos/ 

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

Я прочитал о переадресации портов в моем маршрутизаторе, поэтому я открыл интерфейс маршрутизатора. Я пошел в NAT/PAT часть моей конфигурации маршрутизатора и добавил новое правило со следующим caracteristics:

Application: svn 
External port:3690 
Internal port:80 
protocol : TCP 
equipment: myPC 

И Проверил опцию «Активный». Но я думаю, что чего-то не хватает. я прочитал в статье, для проверки, если удаленный доступ работает я должен идти к

svn://83.200.108.71 

Пока он не работает. «невозможно подключиться ..» Может кто-то, пожалуйста, помогите мне.

+1

Имеет ли: svn: //83.200.108.71: 3690 работа? – TimWolla

+0

@TimWolla нет, он не работает – Anila

+0

Почему вы получаете доступ к нему через маршрутизатор с svn, тогда как в других, доступных ему через http? Установили ли вы демон svnserve? Или вы использовали модуль Apache? – khmarbaise

ответ

1

Подождите ... Вы можете получить доступ к своему репозиторию через 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 для аутентификации (который также может разрешить проверку подлинности Active Directory Windows)
  • Apache HTTPD может обслуживать несколько репозиториев, а svnserve может обслуживать только один репозиторий на порту 3690.
+0

спасибо, я попробую. – Anila