Composer просит логин и пароль

Сегодня столкнулся с проблемой: при работе с пакетами composer стал вдруг ругаться и требовать пароль и логин.

Could not fetch https://api.github.com/repos/jquery/jquery/commits/9434e03193c45d51bbd063a0edd1a07a6178d33f

Легкое гугление показало, что проблема существует, но на русском практически нет ответа на сей животрепещущий вопрос.

Оказалось, что сервисом сайта github.com, через который работает сам composer, пользуется большое количество пользователей. И когда сервис не справляется, он требует какое-нибудь подтверждение, что к сайту обращается не бот и программа-качалка.

Однако связка логин-пароль от своего аккаунта на github почему-то не сработал.

Пришлось искать другой путь, намек на который выдает при этой ошибки composer: нужно прописать какой-то токен.

Оказалось, что все просто. Нужно дать команду composer, чтобы он создал файл auth.json с вашим токеном, который будет говорить github что вы – это вы.

Первым делом нужно получить этот самый токен. Заходим на сайт github.com и авторизуемся там. Затем в верхнем правом углу жмем шестернку (Settings), в левом боковом меню выбираем Application.

Создание токена на github
Создание токена на github

Далее ищем Create new token и жмем. Далее создаем токен, страницу не закрываем, он нам сейчас понадобимся.

Второй шаг – прописать его в composer. У меня по путям сразу не работает, так что пришлось делать обходной путь.

Я работаю на Windows, так что далее будет для этой системы.

Запускаю OpenServer, открываю через панельку значка в трее консоль (если сразу открыть, то не будут работать пути, о чем я уже писал как настроить PhpStorm и OPenServer), затем перехожу на диск с:.

В консоли заходим в папку

cd c:\Users\Евгений\AppData\Roaming\Composer

Вместо «Евгений» подставьте свой логин в системе. А далее вводите команду:

php composer config -g github-oauth.github.com <token>

Вместо токена вставьте свой токен с github.

Вот и все.

Проверяют – работает :).

Ссылка на основную публикацию