Установка Bower не может найти удовлетворительную версию, хотя на GitHub есть соответствующий тег

У меня возникли проблемы с установкой зависимостей бауера при установке Windows. Установка завершилась неудачно для меня в Windows 7 x64, с git 2.6.4.windows.1, node v5.4.1, npm 3.3.12, bower 1.7.2.

Он работает для коллеги по OSX (git 2.5.4, node v4.1.1, npm 2.14.4, bower 1.5.3) и для коллеги по Windows 10 (git 2.5.0.windows.1, node v4.2.2, npm 2.14.7, bower 1.3.11).

Сообщение об ошибке, которое я получаю, в основном сообщает mit, что bower-angular-translate не имеет тега версии, который удовлетворяет 2.8.1, но репозиторий GitHub имеет версию 2.8.1.
Пакеты с отказами angular-ui-router, angular-local-storage и angular-translate.

Я попробовал переопределить node на 0.10.x и 4.x.x и переустановить беседу, оба не работали.

Если кто-то столкнулся с тем же сообщением об ошибках с bower (на окнах?) и успешно его решил, любые указатели будет с благодарностью.


Сообщение об ошибке после запуска bower install:

bower angular-translate#~2.8.1    ENORESTARGET No tag found that was able to satisfy ~2.8.1

Additional error details:
No versions found in git://github.com/PascalPrecht/bower-angular-translate.git

Мой bower.json:

{
    "name": "My App Name",
    "version": "0.0.1",
    "dependencies": {
        "angular": "1.4.7",
        "angular-animate": "1.4.7",
        "angular-aria": "1.4.7",
        "angular-cookies": "1.4.7",
        "angular-resource": "1.4.7",
        "angular-sanitize": "1.4.7",
        "angular-material": "0.11.2",
        "angular-ui-router": "0.2.5",
        "angular-local-storage": "0.2.x",
        "angular-translate": "~2.8.1"
    }
}

На всякий случай, мой package.json:

{
	"author": "My Name",
	"name": "My App Name",
	"version": "0.0.1",
	"dependencies": {},
	"devDependencies": {
		"chai": "2.2.0",
		"gulp": "3.9.x",
		"gulp-angular-filesort": "1.1.1",
		"gulp-bower-files": "0.1.x",
		"gulp-clean": "0.2.x",
		"gulp-debug": "2.1.x",
		"gulp-concat": "2.2.x",
		"gulp-filter": "1.0.x",
		"gulp-inject": "0.4.x",
		"gulp-less": "1.2.3",
		"gulp-livereload": "1.3.x",
		"gulp-tsc": "0.10.x",
		"gulp-uglify": "1.2.x",
		"gulp-util": "2.2.x",
		"gulp-watch": "0.6.x",
		"karma-coverage": "~0.2.4",
		"karma-mocha": "~0.1.6",
		"karma-phantomjs-launcher": "^0.1.4",
		"karma-sinon-chai": "~0.2.0",
		"merge-stream": "0.1.x",
		"mocha": "~1.20.1",
		"phantomjs": "^1.9.17",
		"q": "1.0.x",
		"run-sequence": "0.3.x"
	}
}

Ответы

Ответ 1

GitHub отозвал мои SSH-ключи, вызвав git clone.

Поскольку клонирование репозиториев через git clone --branch <tagname> https://<repo> в теге , я понял из сообщения об ошибке, что беседа не смогла найти тег.

И мои bash из msys- git, и мои cmd.exe были настроены на использование Putty plink.exe, а gower пыталась подключиться через OpenSSH. Putty был настроен с правильным секретным ключом, OpenSSH не был.

Преступником был GitHub, который удалил мой открытый SSH-ключ из моего профиля, сделав git clone через SSH (который по умолчанию для bower install) завершился с Permission denied (publickey).

Все ваши ключи SSH принадлежат нам

Комбинация GitHub не отправляет мне электронное письмо с уведомлением об этом, а сообщение об ошибке bower, описывающее совершенно другую ошибку, сделало ошибку-отслеживание этого кошмара.


Kudos перейдите к Andra для комментария, чтобы использовать git config --global url."https://".insteadOf git://. Хотя это не подходит как постоянное решение (сервер моей компании git обеспечивает SSH, поскольку он превосходит простое сочетание пароля пользователя), это помогло ограничить проблему доступом SSH.

Ответ 2

Попробуйте изменить протокол git с git на https, выполнив:

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