GitHub Pages

В этом туториале мы используем Travis CI для деплоя в Github Pages. Travis CI бесплатен для репозиториев с открытым исходным кодом, то есть ветка master вашего репозитория должна быть публичной. Пожалуйста, перейдите в описание приватного репозитория, если вы предпочитаете не открывать свой исходный код, либо откажитесь от загрузки своих файлов на GitHub.

  1. Создайте репозиторий с названием username.github.io, где username — ваше имя пользователя GitHub. Если вы уже загрузили файлы в репозиторий с другим названием, просто переименуйте его.
  2. Загрузите push файлы вашей папки Hexo в этот репозиторий. Папка public/ не должна загружаться по умолчанию, проверьте, что файл .gitignore содержит строку public/. Структура папки должна быть такой же, как в этом репозитории, без файла .gitmodules.
  3. Добавьте Travis CI в свой аккаунт.
  4. Зайдите на страницу Настроек приложения, сконфигурируйте Travis CI, чтобы оно имело доступ к репозиторию.
  5. Вас перенаправят на страницу Travis.
  6. В новой вкладке сгенерируйте новый токен с областью видимости repo. Запишите значение токена.
  7. На странице Travis зайдите в настройки репозитория. В поле Environment Variables, вставьте GH_TOKEN в качестве имени и токен в качестве значения. Нажмите Add для сохранения.
  8. Добавьте файл .travis.yml в свой репозиторий (рядом с _config.yml & package.json) со следующим контентом:
sudo: false
language: node_js
node_js:
- 10 # use nodejs v10 LTS
cache: npm
branches:
only:
- master # build master branch only
script:
- hexo generate # generate static files
deploy:
provider: pages
skip-cleanup: true
github-token: $GH_TOKEN
keep-history: true
on:
branch: master
local-dir: public
  1. Как только Travis CI завершит деплой, сгенерированные страницы появятся в ветке gh-pages вашего репо.
  2. В настройках своего репозитория GitHub перейдите в раздел “GitHub Pages” и измените Source на ветку gh-pages.
  3. Проверьте страницу на username.github.io.

Страница проекта

Если вы препочитаете страницу проекта на GitHub:

  1. Перейдите на страницу своего репо на GitHub. Откройте таб Settings. Измените Repository name, чтобы ваш блог был доступен на username.github.io/repository, repository может быть любым словом, как blog или hexo.
  2. Редактируйте файл _config.yml, изменив значение root: на /<repository>/ (должно начинаться и заканчиваться косой чертой).
  3. Закоммитьте и запушьте.

Приватный репозиторий

Следующая инструкция адаптирована со страницы развёртывание одной командой page.

  1. Установите hexo-deployer-git.
  2. Добавьте следующую конфигурацию в _config.yml, (удалите существующие строки, если таковые имеются)
deploy:
type: git
repo: https://github.com/<username>/<project>
# example, https://github.com/hexojs/hexojs.github.io
branch: gh-pages
  1. Запустите hexo clean && hexo deploy.
  2. Проверьте веб-страницу по адресу username.github.io.

Полезные ссылки