svn через HTTP прокси [закрыто]

Я на ноутбуке (Ubuntu) с сетью, которая использует HTTP-прокси (разрешены только http-соединения).
Когда я использую svn для url, например ' http://....."все круто (репозиторий Google chrome работает отлично), но прямо сейчас мне нужно svn с сервера с 'svn://....- и я вижу, что связь прервана.
Я установил конфигурацию прокси-сервера в /etc/subversion / servers, но это не помогает.
У кого-нибудь есть мнение/решение?

7 ответов


на /etc/subversion/servers вы http-proxy-host, которая не имеет ничего общего с svn://, который подключается к другому серверу обычно работает на порту 3690 начал


ок, это должно быть очень просто:

$ sudo vi /etc/subversion/servers

редактировать файл:

[Global]
http-proxy-host=my.proxy.com
http-proxy-port=3128

сохранить его, запустить svn снова, и это сработает.


если вы можете получить SSH к нему, вы можете SSH-порт-перенаправленный SVN-сервер.

использовать SSHs -L ( или -R, Я забыл, это всегда меня смущает ) сделать ssh-туннель так, чтобы

127.0.0.1:3690 действительно подключается к remote: 3690 через SSH-туннель, а затем вы можете использовать его через

svn co svn://127.0.0.1/....

хорошо, эта тема несколько устарела, но, как я нашел ее в google и есть решение, это может быть интересно для кого-то:

в основном (конечно) это невозможно на каждом HTTP-прокси, но работает на прокси, позволяющих http-соединение на порту 3690. Этот метод используется HTTP-прокси на порту 443 для обеспечения безопасного соединения HTTPS. Если администратор настроит прокси-сервер на открытие порта 3690 для http connect, можно Настроить локальную машину на установку туннель через прокси.

Мне просто нужно было проверить некоторые файлы из svn.openwrt.org в пределах нашей сети компаний. Простым решением для создания туннеля является добавление следующей строки в ваш /etc/hosts

127.0.0.1 svn.openwrt.org

после этого вы можете использовать socat для создания TCP-туннеля к локальному порту:

while true; do socat tcp-listen: 3690 прокси: прокси.at.твой.компания: svn.openwrt.org: 3690; done

вы должны выполните команду от имени root. Он открывает локальный порт 3690 и при подключении создает туннель для svn.openwrt.org в том же порту.

просто замените адреса портов и серверов на свои собственные потребности.


когда вы используете svn: / / URI, он использует порт 3690 и, вероятно, не будет использовать HTTP proxy


svn:// не говорит http, поэтому HTTP-прокси ничего не может сделать.

любая причина, почему http не работает? Вы рассматривали https? Если вам это действительно нужно, вам, вероятно, нужно открыть порт 3690 в брандмауэре.


Если вы используете стандартную установку SVN, соединение svn:// будет работать на tcpip-порту 3690, поэтому в основном невозможно подключиться, если вы не измените конфигурацию сети (вы сказали, что разрешен только Http-трафик) или установите http-модуль и Apache на сервере, на котором размещен ваш SVN-сервер.