Как мне заставить Git использовать прокси-сервер?
Мне нужно проверить код с сервера Git, но он показывает «Время ожидания запроса» каждый раз. Как мне обойти это?
Кроме того, как я могу установить прокси-сервер?
git
version-control
proxy
PlagueHammer
источник
источник
Ответы:
Команда для использования:
proxyuser
на свой прокси-пользовательproxypwd
на свой пароль проксиproxy.server.com
на URL вашего прокси-сервера8080
на прокси-порт, настроенный на вашем прокси-сервереОбратите внимание, что это работает как для репозиториев http, так и для https.
Если вы в любое время решите сбросить этот прокси и работать без прокси:
Команда для использования:
Наконец, чтобы проверить текущий установленный прокси:
источник
%40
в качестве замены@
строки имени пользователя / пароля, хотя я сам не проверял это. Надеюсь, поможет. :-)Это работало для меня, в Windows XP за корпоративным брандмауэром.
Мне не нужно было устанавливать какой-либо локальный прокси или любое другое программное обеспечение, кроме git v1.771, с http://code.google.com/p/msysgit/downloads/list?can=3
proxyuser = прокси-пользователь, которого я назначил нашим ИТ-отделом, в моем случае это тот же пользователь Windows, которого я использую для входа на свой ПК, пользователь Active Directory
proxypwd = пароль моего прокси-пользователя
proxy.server.com:8080 = имя и порт прокси-сервера, я получил его из Панели управления, Свойства обозревателя, Соединения, Кнопка настроек Lan, Кнопка Дополнительно в разделе Proxy Server, используйте имя сервера и порт в первой строке (http) ,
mygithubuser = пользователь, которого я использую для входа на github.com
mygithubpwd = пароль для моего пользователя github.com
repoUser = пользователь-владелец репо
repoName = название репо
источник
git config --global http.sslcainfo MY_NEW_CERTS_BUNDLE.crt
плюс сертификаты, загруженные как описано в simplicidade.org/notes/archives/2011/06/… (благодаря: stackoverflow.com/a/7206627/98528 ) сделали это для меня!git://
протокол.Задайте системную переменную с именем
http_proxy
со значениемProxyServer:Port
. Это самое простое решение. Соответственно, используйтеhttps_proxy
как указано в комментариях daefu.Установка gitproxy (как упоминает sleske) - это еще один вариант, но для этого требуется «команда», которая не так проста, как приведенное выше решение.
Ссылки: http://bardofschool.blogspot.com/2008/11/use-git-behind-proxy.html
источник
http_proxy
требуется для URL-адресов HTTP иhttps_proxy
требуется для URL-адресов HTTPS. Кроме того, можно просто установитьall_proxy
для всех URL-адресов. СмотритеENVIRONMENT
раздел в curl (1) . Однако при настройке параметров git-confighttp.proxy
используется как для URL-адресов HTTP, так и для HTTPS. Смотритеhttp.proxy
в git-config (1) .Если способ настройки прокси-сервера из командной строки не работает, вы, вероятно, можете просто отредактировать .gitconfig (в корне вашего профиля, который может скрываться как в C: \ Documents and Settings, так и на каком-то сетевом диске) и добавить это :
Тем не менее, YMMV охватывает только первый этап настройки командной строки. Возможно, вам придется изменить конфигурацию системного git, и я понятия не имею, где они это спрятали.
источник
В качестве альтернативы использованию
git config --global http.proxy address:port
вы можете установить прокси в командной строке:Преимущество в том, что прокси не установлен постоянно. Под Bash вы можете установить псевдоним:
источник
Если вы используете Ubuntu, сделайте следующее ...
Шаг 1: Установите штопор
Шаг 2: Напишите скрипт с именем git-proxy.sh и добавьте следующее
Шаг 3: Сделайте скрипт исполняемым
Шаг 4: Настройте прокси-команду для GIT, установив переменную среды
Теперь используйте команды git, такие как
источник
"$@"
вместо$*
. Смотрите руководство по вашей оболочке для более подробной информации.Столкнулся с той же проблемой из-за нескольких
.gitconfig
файлов в Windows, следуя приведенным ниже инструкциям, чтобы исправить одно и то же:Шаг 1: Откройте Git BASH
Шаг 2: Ищите
.gitconfig
, выполнив следующую команду:Шаг 3: Скопируйте ниже содержание в
.gitconfig
:источник
Попробуйте поместить в файл ~ / .gitconfig следующее:
источник
Для протокола git (git: // ...) установите socat и напишите такой скрипт:
сделайте его исполняемым, поместите его в свой путь и в свой
~/.gitconfig
наборcore.gitproxy
к имени этого скрипта.источник
socat STDIO PROXY:%proxy%:%1:%2,proxyport=%PROXYPORT%
set GIT_PROXY_COMMAND=path\to\script
чтобы GIT использовал прокси, не вмешиваясь в git config.Есть кое-что, что я заметил и хочу поделиться здесь:
Приведенный выше метод не будет работать для URL-адресов ssh (т. Е.
git@github.com:<user name>/<project name>.git
):И все не изменится, если мы установим SSH через порт HTTPS ( https://help.github.com/en/articles/using-ssh-over-the-https-port ), потому что он только меняет порт (по умолчанию 22 ) соединение SSH соединяется с.
(Не носитель английского языка, пожалуйста, уточните мои слова, если это необходимо)
источник
Я работаю на Windows XP на работе (штат / правительство), поэтому я провел исследование и нашел это здесь, и это сработало для меня. Надеюсь это поможет :)
Переменная среды http_proxy
Если вы используете прокси-сервер или брандмауэр, вам может потребоваться установить переменную среды http_proxy, чтобы получить доступ к некоторому URL из командной строки. Пример: установка ppm для perl или применение rpm в linux, обновление ubuntu
Задайте для переменной http_proxy имя хоста или IP-адрес прокси-сервера: http_proxy = http: // [proxy.example.org]
Если прокси-серверу требуются имя пользователя и пароль, включите их в следующую форму: http_proxy = http: // [username: password@proxy.example.org]
Если прокси-сервер использует порт, отличный от 80, укажите номер порта: http_proxy = http: // [username: password@proxy.example.org: 8080]
Windows XP
Linux, Solaris или HP-UX
Установите переменную среды http_proxy с помощью команды, специфичной для вашей оболочки (например, set или export). Чтобы сделать это изменение постоянным, добавьте команду в соответствующий файл профиля для оболочки. Например, в bash добавьте строку, подобную следующей, в ваш файл .bash_profile или .bashrc:
источник
В дополнение к этим ответам я счел полезным рассмотреть следующие 2 момента:
Возможно, потребуется применить схему аутентификации:
Также, как правило, со схемой аутентификации NTLM, может потребоваться явно предоставить домен AD.
В git bash:
И обновите http.proxy соответственно:
В любом случае, расследованию может помочь добавление журналов CURL:
источник
git config --global http.proxyAuthMethod basic
. Git gersion 2.8.3 не отправлял никакой аутентификации, пока я не установил этот параметр конфигурации.Если у вас установлены и настроены tsocks или proxychain , вы можете
или
чтобы сделать его короче, я создал ссылку символа
/usr/bin/p
дляproxychains
, так что я могу использовать его , как этои я могу использовать его для прокси любой команды,
кстати, proxychains давно не обновляется, вы можете попробовать proxychians-ng
источник
Настройка git proxy на терминале
если
Установите глобально один раз
если вы хотите установить прокси только для одного проекта git (могут быть ситуации, когда вы можете вообще не захотеть использовать один и тот же прокси или любой прокси для некоторых соединений git)
если вы хотите отобразить текущие настройки прокси
если вы хотите удалить прокси глобально
если вы хотите удалить прокси только для одного git root
источник
вот настройка прокси
источник
Я следовал большинству ответов, которые были рекомендованы здесь. Сначала я получил следующую ошибку:
Затем я попробовал следующую команду @Salim Hamidi
Но я получил следующую ошибку:
Это может произойти, если прокси-сервер не может проверить сертификат SSL. Поэтому мы хотим убедиться, что проверка ssl отключена (не рекомендуется для ненадежных сайтов), поэтому я сделал следующие шаги, которые были рекомендованы @Arpit, но с небольшими изменениями:
1. Сначала убедитесь, что удалили все предыдущие настройки прокси:
2. Затем перечислите и получите содержимое gitconfig.
3.Последнее обновление содержимого файла gitconfig, как показано ниже:
источник
Я перепробовал все приведенные выше ответы, и у меня ничего не получалось, так как были проблемы с кодировкой пароля прокси.
Эта команда сработала:
Не вводите пароль в вашей команде. Он будет динамически запрашивать при попытке подключиться к любому git-репо.
источник
Для пользователей Windows: если
git config
илиset http_proxy=
не работает, этот ответ может помочь:заменить
git://
протокол репозиторий сhttp://
. Обратите внимание, вы должны будете установитьhttp_proxy
первое, в любом случае.источник
После того, как я без устали пробовал каждое решение на этой странице, я решил использовать вместо него ключ SSH!
источник