Как настроить HTTP-прокси для svn


96

Хочу проверить код из репозитория http://code.sixapart.com/svn/perlbal/ . Я могу получить доступ к URL-адресу репозитория, только установив прокси. Думаю, если я хочу получить код с того же URL-адреса по svn, мне также нужно настроить прокси. Кто-нибудь из вас может сказать мне, как настроить HTTP-прокси в svn?

Кстати, я использую svnклиент командной строки под Linux.

Ответы:


126

Вы видели раздел часто задаваемых вопросов. Что делать, если я использую прокси? ?

... отредактируйте файл конфигурации "серверов", чтобы указать, какой прокси использовать. Расположение файлов зависит от вашей операционной системы. В Linux или Unix он находится в каталоге «~ / .subversion». В Windows он находится в "% APPDATA% \ Subversion". (Попробуйте "echo% APPDATA%", обратите внимание, что это скрытый каталог.)

Для меня это включало раскомментирование и установку следующих строк:

#http-proxy-host=my.proxy
#http-proxy-port=80
#http-proxy-username=[username]
#http-proxy-password=[password]

Кто-нибудь знает, есть ли способ настроить его, чтобы попробовать прокси-сервер, и вернуться к использованию основного сетевого подключения, если прокси недоступен? У меня есть прокси на работе, но когда я удален, я хотел бы иметь возможность использовать SVN без необходимости открывать файл конфигурации и комментировать строки для прокси.
Эрик Митчелл

1
Мне помогло решение Kimvais ниже. Мне пришлось раскомментировать раздел прямо под «[global]». Изначально я раскомментировал одни и те же строки при их первом появлении, что не помогло.
Девеш

@ErikMitchell: создайте две версии файла конфигурации и сценариев, которые позволяют переключаться. Прочтите документацию по операционной системе, как подключиться к механизму сетевого обнаружения и выполнить правильный сценарий, когда ваш ноутбук заметит, где он находится.
Аарон Дигулла 01

2
У меня это работает, но пароль остается в виде обычного текста. Я не хочу, чтобы мой пароль открывался таким образом. Есть ли способ очертить это?
PMT

62

Вы можете найти инструкции здесь . В основном вы просто добавляете

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128
http-proxy-compression = no

в ваш ~/.subversion/serversфайл.


7
Это конфигурация на стороне клиента. Файл «серверы» означает настройки для подключения к серверам. См. Svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.1
Кимвайс,

последняя ссылка на svnbook (v1.7) для конфигурации файлов "серверов": svnbook.red-bean.com/en/1.7/…
Майкл

11

В Windows 7 вам, возможно, придется отредактировать этот файл

C: \ Users \ <Имя пользователя> \ AppData \ Roaming \ Subversion \ servers

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128

9

Для этого есть два общих подхода:

Если вы работаете в Windows, вы также можете записать http-proxy-параметры в реестр Windows . Это очень удобно, если вам нужно применить настройки прокси в среде Active Directory через объекты групповой политики.


1
В Linux вы можете использовать, alias svn-my-proxy='svn --config-option ...'чтобы иметь возможность использовать svn-my-proxy co http://svn/repo/trunk. Это позволяет вам легко переключаться между конфигурациями proxy ( svn-my-proxy co) и no-proxy ( svn co) в зависимости от того, в какой сети находится ваш компьютер в данный момент. Вы можете добавить aliasкоманду, которая ~/.bashrcбудет воссоздана при следующем входе в bash. Очень помогает мне между моей рабочей сетью и моей домашней сетью!
Дрю Андерсон

0

В TortoiseSVN вы можете настроить прокси-сервер в разделе Настройки => Сеть.


Было бы здорово, если бы вы могли добавить скриншот
Петтер Фриберг

-2

Большинство * nixen понимают переменную окружения http_proxy при выполнении веб-запросов.

export http_proxy=http://my-proxy-server.com:8080/
svn co http://code.sixapart.com/svn/perlball/

должен сделать свое дело. Большинство библиотек http проверяют эту (и другие) переменные среды.


25
К сожалению, Subversion еще не поддерживает http_proxy и, вероятно, никогда не будет. См.
Проблему

4
Это просто эпично . Рад знать, что это так, но лучше знать, как это сделать правильно,
Питеш

3
Спасибо за внимание. Мне любопытно: в Ubuntu 14.10 http_proxyсоглашение вроде работает (SVN v1.8.10). Но этого нет в Centos 6.6 (SVN v1.6.11). Я искал в их список изменений , но не нашел ничего достаточно ясно. Есть идеи, пропатчен ли он навсегда?
Anto

3
svn 1.8 почти полностью изменил работу http-сети. Добавление поддержки http_proxy могло быть побочным эффектом.
Petesh
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.