thumb

Мы можем настроить локальную версию нашего Jekyll GitHub Pages веб-сайта для предварительного просмотра нашего веб-сайта, прежде чем публиковать изменения. Но когда я запускаю jekyll serve команду, он выдает следующее сообщение об ошибке:

GitHub Metadata: No GitHub API authentication could be found. Some fields may be missing or have incorrect data.

Вот решение этой проблемы:

Создай персональный токен доступа GitHub с public_repo scope. Ты можешь найти руководство здесь.

Как исправить предупреждение о Jekyll + GitHub Metadata

Примечание: Помни о том чтобы держать ключ в секрете - ведь ты же не хочешь чтобы другие люди использовали API от твоего имени!

Открой ~/.bash_profile файл (ты можешь использовать твой любимый текстовый редактор вместо nano).

nano ~/.bash_profile

Примечание: Этот файл может иметь различные имена и места расположения в зависимости от используемых shell и OS. Например: .profile, .bashrc, .zshenv. В MacOS это .bash_profile который расположен в пользовательской домашней директории (~/). Ты можешь найти в Google информацию о файле в которой ты можешь добавить новую переменную окружения именно для твоей OS.

Затем определите новую переменную окружения с именем переменной JEKYLL_GITHUB_TOKEN и токен доступа GitHub как значение переменной (которое что-то вроде abc123def456). Ты можешь сделать это добавив следующую строку в конец файла:

export JEKYLL_GITHUB_TOKEN='abc123def456'

Примечание: Замени abc123def456 на твой токен.

Теперь перезагрузи терминал.

Ты можешь проверить новую переменную окружения со следующей командной строкой, которая должна отобразить твой GitHub токен.

echo $JEKYLL_GITHUB_TOKEN

В дополнение

По соображениям безопасности ты можешь также получить доступ к GitHub токену со следующей командной строкой при постройке или администрировании веб-сайта на Jekyll:

JEKYLL_GITHUB_TOKEN=abc123def456 bundle exec jekyll serve

Также ты можешь установить временную переменную окружения с помощью следующей командной строки:

export JEKYLL_GITHUB_TOKEN=abc123def456

Команда export запускаемая самостоятельно, а не из .bash_profile файла будет только временной настройкой и переменная окружения будет существовать только до перезагрузки.

Если эта статья помогла вам, пожалуйста, оставьте комментарий :smiley:

Спасибо за прочтение!