Git/Bower Errors: Exit Code # 128 & Failed connect

Я использую Bower для установки нескольких библиотек. Для демонстрации здесь я устанавливаю бутстрап. Независимо от пакета, я получаю следующие ошибки:

C:\Scott>bower install bootstrap
bower not-cached    git://github.com/twbs/bootstrap.git#*
bower resolve       git://github.com/twbs/bootstrap.git#*
bower ECMDERR       Failed to execute "git ls-remote --tags --heads git://github
.com/twbs/bootstrap.git", exit code of #128

Additional error details:
fatal: unable to access 'https://github.com/twbs/bootstrap.git/': Failed connect
to github.com:443; No error    

Я попытался использовать следующее решение для удаления первой ошибки - которую я нашел из этого search:

git config --global url."https://".insteadOf git://

Однако это не работает и не выполняет никаких других решений, найденных на этой странице. В поисках решения для 2-й ошибки кажется, что установка имени пользователя /pwd для прокси-сервера решит проблему, если вы находитесь в корпоративной сети/за брандмауэром. Однако я не использую прокси-сервер, поскольку я нахожусь на своем домашнем ПК/сети (Windows 7 x64).

Спасибо!

EDIT: окно команды с ошибками:

enter image description here

Ответ 1

Порт 22 заблокирован на моем компьютере. Как только я обнаружил, что блокировал его и открыл порт, я смог запустить сборщик cmd без каких-либо проблем.

Ответ 2

Я знаю, что это не "исправление" проблемы, но вы можете использовать

git config --global url."https://".insteadOf git://

сообщить git использовать HTTPS вместо git, который разработал у меня установку зависимостей npm.

Ответ 3

Вместо этого выполните следующую команду:

 git ls-remote --tags --heads git://github.com/twbs/bootstrap.git

вы должны запустить эту команду:

 git ls-remote --tags --heads [email protected]:twbs/bootstrap.git

или

 git ls-remote --tags --heads https://github.com/twbs/bootstrap.git

или вы можете запустить git ls-remote --tags --heads git://github.com/twbs/bootstrap.git, но вам нужно сделать git всегда использовать https следующим образом:

 git config --global url."https://".insteadOf git://

Ссылка: https://github.com/bower/bower/issues/50

Ответ 4

Я столкнулся с этим с моей корпоративной сетью.

Мне показалось странным, потому что я всегда использовал ssh для связи с git и никогда не имел проблемы.

Я пробовал https и не работал, поэтому добавил настройки прокси в git config и все было хорошо

git config --global http.proxy http://proxyuser:[email protected]:8080
git config --global https.proxy https://proxyuser:[email protected]:8080

И убедившись, что это сработало

git config --list

Ответ 5

Кажется, что azsl1326 не использовал bower (git) по порту 9418 (git://), а затем сказал git использовать порт 22 (https://). Это все еще не удалось, но тогда открытие порта 22 получило желаемый результат.

Наиболее прямым решением является открытие порта 9418. Это порт, который использует протокол git://.

Ответ 6

Перейдите в свою папку приложений и запустите эту команду

git config --global url. "https://".insteadOf "git://

"

Это должно исправить вашу проблему.

Ответ 8

Эта ошибка связана с плохой конфигурацией вашего брандмауэра. Вы заметите, что собеседник пытается связаться с git через протокол git://, а не http://. Вы должны открыть порт 9418. Добавьте две строки в конфигурацию iptables:

iptables -t filter -A INPUT -p tcp --dport 9418 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 9418 -j ACCEPT

Это должно сделать трюк.

Ответ 9

Вы находитесь за брандмауэром?

Git не отображает конфигурацию прокси-сервера при его вызове, поэтому явно задайте переменные среды, например:

export HTTP_PROXY=http://username:[email protected]:port/
export HTTPS_PROXY=http://username:[email protected]:port/

Если ваш корпоративный прокси не нуждается в аутентификации, просто опустите бит username:[email protected] в URL-адресах.

Это сработало для меня!

Ответ 10

Если ваш деревенский блок github, например. Китайский материк, тогда вы можете создать прокси-сервер, например. используйте goagent и gae, затем установите адрес прокси для git, например.

git config --global http.proxy 127.0.0.1:8087

Ответ 11

Во-первых, вы должны проверить, распознает ли команда Visual Studio команду git: Инструменты > Командная строка

C: \.... \ > git

если эта команда не распознана, вы должны добавить папку git в переменные среды

fooobar.com/questions/59963/...

Это то, чего я отсутствовал, и помогло.

Надеюсь, что это поможет.

Ответ 12

Я добавляю свой ответ здесь, так как это один из самых близких вопросов, которые соответствуют моей ситуации. Старался установить select2, а не bootstrap, но результат был тот же.

bower install select2 сообщил, что git не удалось найти каталог. Используется

git config --global url. "https://".insteadOf git://

config fix, но это привело к (перефразированной) ошибке

Я не могу использовать https

Моя проблема была решена неудовлетворительно, так как она включает в себя магию.

Я пытался запустить это в командной оболочке (cmd.exe, windows). Я выполнил ту же команду и запустил ее в powershell, и это сработало. ಠ_ಠ

tl; dr: комбинация https://и powershell работала для меня

Ответ 13

Я получил эту ошибку после того, как моя антивирусная программа отправила на карантин загрузку с github.com. По неизвестной причине.

После очистки этих файлов (exe файлов) все сработало.

Ответ 14

git config --global url. "https://".insteadOf "git://"  

не работал у меня. Поэтому я нашел эту альтернативу:

Перейдите в папку temp. (т.е. если вы используете окна, тогда C:\Users\{username}\AppData\Roaming\bower\cache\packages). Там вы можете увидеть несколько файлов. Откройте каждый из них, и вы увидите URL-адрес. Измените его с git://... на https://... и сохраните все файлы.

Теперь запустите bower install.

Ответ 15

Проверьте настройки конфигурации git (git config --global --edit). В моем случае была пара более недействительных записей вроде:

[ядро]
  gitproxy = gitproxy.cmd
[ "Https://" ]
[ "Https://" ]
[url "https://" ]

Пересмотрите их и удалите, если они вам больше не нужны.

Ответ 16

Ваши ключи ошибочны. Просто добавьте их в GitHub/Bitbucket/все, что вы используете. Это не более чем проблема с вашими ключами.

Ответ 17

Однако я не использую прокси-сервер, поскольку я нахожусь на своем домашнем компьютере/сети

Имел ту же проблему (получение кода выхода 128) в моей домашней сети и был совершенно уверен, что я не использовал прокси. Оказывается, Git сохранил прокси-сервер, в который я входил некоторое время в прошлом - после осмотра в конфигах я нашел его под тегом [http].

Я новичок в Git, и я совсем не уверен, если эти конфиги обычно легко доступны - я использую Tortoise Git, так как я ничего не делаю, и у меня есть GUI для вещей.

Надеюсь, что "ответ" тем не менее помогает.

Ответ 18

В моем случае был доступ к папке, где я был во время выполнения команды! В Windows я создал папку сначала по командной строке: mkdir "MyFolder", и у меня была ошибка. но если я создам папку с помощью мыши, щелкните правой кнопкой мыши, создайте папку и т.д. Прекрасно работает!

Ответ 19

Если вы выполняете аутентификацию с помощью bitbucket, где я получаю ошибку 128 и Failed connect. но при использовании аутентификации git концентратор работает нормально.

Ответ 20

Я знаю, что это старый вопрос, в любом случае позвольте мне добавить еще одну вещь.

Иногда (если вы работаете в офисе или в частной сети), брандмауэр сервера шлюза блокирует запросы https (порт 443) из командной строки

git config --global url."http://".insteadOf "https://"

Используйте это, чтобы настроить git для использования http через https для этих ситуаций

Ответ 21

Это сработало для меня,

Скопируйте файл libcurl.dll в папку установки Git (C:\Program Files\Git\bin\libcurl.dll). Вставьте его в место, где существует git.exe(C:\Program Files\Git\libexec\git -core).

Ответ 22

Запустите эти 2 команды, чтобы предоставить git доступ через вашу систему

eval `ssh-agent`
ssh-add ~/.ssh/id_rsa

Эти команды предполагают, что у вас есть ssh-ключ на удаленном сервере git (битбакет/github/другой)