Bower - fatal: невозможно подключиться к github.com
После обновления ember-cli на моем mac (Yosemite 10.10.2)
npm uninstall -g ember-cli
npm cache clean
bower cache clean
npm install -g [email protected]
....
или, может быть, после обновления Йосемити до 10.10.2,
или после обновления моей Java до v8-32...
мой bower больше не работает.
Если я попробую:
bower list
Я получаю сообщение об ошибке:
bower check-new Checking for new versions of the project dependencies..
bower ECMDERR Failed to execute "git ls-remote --tags --heads git://github.com/rwjblue/ember-cli-test-loader.git", exit code of #128
Additional error details:
fatal: unable to connect to github.com:
github.com[0: 192.30.252.128]: errno=Operation timed out
Но если я выполню:
git ls-remote --tags --heads git://github.com/rwjblue/ember-cli-test-loader.git
он работает:
git ls-remote --tags --heads git://github.com/rwjblue/ember-cli-test-loader.git
c6006a11515c756d115bb5209103a22c2e9554a0 refs/heads/master
929777f8b5c60db3120712c7328f5debdf74a0cd refs/tags/0.0.1
055d50f770ad333e7ead10ecb04605f951e2435b refs/tags/0.0.2
9defa2c59df38dcc334d6c1cc266075c04c2a4f6 refs/tags/0.0.3
a925b8fc428829ea3599e66eb0e6353726426356 refs/tags/0.0.4
c6006a11515c756d115bb5209103a22c2e9554a0 refs/tags/v0.1.0
Также работает любой git clone git://или http://, и я могу получить доступ к 192.30.252.128 по http.
Только в сочетании с bower он не работает.
С npm у меня также нет проблем.
Что я пытался удалить и переустановить bower. Но это не решает проблему.
Следующая попытка:
.bowerrc
с:
{
"directory": "bower_components",
"analytics": false,
"proxy": "",
"https-proxy": ""
}
Следующая попытка:
.gitconfig
[url "https://"]
insteadOf = git://
В результате:
Additional error details:
fatal: unable to access 'https://github.com/furf/jquery-ui-touch-punch.git/': Failed to connect to github.com port 443: Operation timed out
Я также попробую:
ssh -T [email protected]
чтобы добавить github.com в known_hosts.
Странная вещь:
ssh -T [email protected]
ssh: connect to host github.com port 22: Operation timed out
Попробуйте еще раз:
ssh -T [email protected]
Hi xxxx! You've successfully authenticated, but GitHub does not provide shell access.
Поэтому иногда это срабатывает, а иногда и нет. Посмотрите https://status.github.com/
показывает, что все отлично с github.
Но почему я иногда получаю таймаут?
Может быть, DNS-сервер отстает? Все другие соединения в порядке.
Также ping выглядит хорошо:
Самое трудное время было
time=100.173 ms
за несколько минут, и я начинаю параллельно команде установки bower с тем же самым таймаутом, что и раньше.... но пинг продолжался и только с 100 мс.
Im также выходит из моих брандмауэров без результата.
У меня нет прокси-конфигураций.
Любая идея?
Обновление 09/02/2014
Im в настоящее время в Гамбурге, и здесь установка колокольчика отлично работает. Таким образом, это не проблема установки системы.
Обновление 12/02/2014
Вернувшись домой, он также работает без каких-либо изменений.
Странно!
Ответы
Ответ 1
Из этого потока npm: https://github.com/npm/npm/issues/5257#issuecomment-60441477
Попробуйте добавить следующее в ваш .gitconfig
[url "https://"]
insteadOf = git://
[url "https://github.com"]
insteadOf = [email protected]
Поскольку я нахожусь на машине под Windows, я также должен был убедиться, что c:\users\me\.gitconfig
и один на моем измененном домашнем диске h:\.gitconfig
были одинаковыми.
Ответ 2
Одно решение для требуемых модулей
Однако это решение не было протестировано против bower list
(как и в моей ситуации), вам может быть препятствовать bower install
из-за локальных политик окружающей среды. Здесь, что позволило мне использовать Bower - избавив меня от множества головных болей:
...
"dependencies": {
"angular": "https://code.angularjs.org/1.3.15/angular.js",
"jquery": "https://github.com/jquery/jquery.git#~2.1.4",
"moment": "https://github.com/moment/moment.git",
"underscore": "https://github.com/jashkenas/underscore.git#~1.8.3"
}
...
ИЛИ
bower install https://domain.ext/path/to/asset.ext -S
Вы можете получить ошибку, fatal: unable to connect to github.com:
при попытке установить - это потому, что в некоторых средах bower не может разрешить протокол git://
. Однако он разрешит http(s):
.
Мое предложение:
- Поиск Bower для пакета,
- Перейдите в репозиторий git,
- Скопируйте URI https git,
-
bower install https://.../author/module.git --save
Это сохранит (--save
/-S
) пакет в ваш файл bower.json
с нотой #~n.n.n
для пакетной версии.
Надеюсь, это поможет вам, ребята, как и я.
Ответ 3
Run
git config --global url."https://".insteadOf git://
экономит много боли, особенно если вы находитесь за брандмауэром.