Обход прокси Mercurial: почему http_proxy.no может игнорироваться
Держите внутренние хосты репозиториев Mercurial прямыми через http_proxy.no и проверяйте переопределение always, прежде чем менять конечную точку.
Прокси Mercurial может оставаться по умолчанию для внешних репозиториев, а внутренние хосты идут напрямую. Для публичного HTTP-маршрута выберите хост и порт из списка HTTP-прокси для конечной точки по умолчанию:
[http_proxy]
host = proxy.example:8080
no = hg.internal.example,localhost
always = falseЗначение no — это список имён хостов через запятую. Mercurial документирует always=true как принудительное использование прокси даже для localhost и записей в этом списке. Поэтому добавление хоста в no при сохранении этого переопределения может оставить его маршрут неизменным.
Для одного вызова переопределите нужные значения, не переписывая конфигурацию:
hg --config http_proxy.always=false --config http_proxy.no=hg.internal.example incomingНастроенный путь по умолчанию у репозитория должен действительно указывать на этот хост. Этот пример заменяет значение no для команды; добавьте другие обязательные записи, если они нужны и этому вызову.
Используйте hg config --source, чтобы найти действующие настройки, когда конфигурации пользователя, репозитория и системы расходятся. Удалите пароли, прежде чем делиться этим выводом.
Эти средства управления относятся к доступу к репозиториям через веб. Репозиторий ssh:// использует другой транспорт. Прямая маршрутизация HTTP по-прежнему требует сетевого пути и собственных учётных данных репозитория.