Статический сайт на Jekyll и GitHub Pages

image

Хотя большинство блогеров, начиная свою карьеру на отдельном ресурсе выбирают для своего творчества либо Wordpress, либо похожую платформу, самые продвинутые и самые экономные предпочитают со временем перебраться на статику. И, одним из самых популярных движков для генерации статических сайтов по праву считается Jekyll. Не последнюю роль в этой популярностия играет то, что jekyll поддерживается создателями и командой GitHub, а также имеющейся возможностью бесплатно хостить сайты на Gihub Pages. Собственно, об этом и речь.

Установка и настройка проекта на Jekyll довольно просты и весьма подробно описаны в официальном руководстве. Просто и быстро.

Установка Jekyll

Допустим, что все минимальные требования мы выполнили и получили работающий проект jekyll с самым простым статическим сайтом. Допустим, что это будет сайт с дефолтной темой minima (аналог underscores для wordpress). И, посты написаны, ну один-то уж точно написан. Пора разместить сайт на хосте и сделать его доступным для мира.

Самы простой способ - это использовать встроенную в GitHub Pages интеграцию с jekyll. Для начала надо создать новый репозиторий на GitHub.

Создание нового репозитория

Далее надо последовательно заполнить поля, необходимые для начальной конфигурации.

Поля для начальной конфигурации

  1. Указываем имя нового репозитория (обязательное поле);
  2. Указываем описание содержания нового репозитория (опциональное поле);
  3. Указываем статус нового репозитория как публичный, доступный всем пользователям (обязательное поле). В случае создания приватного репозитория его невозможно будет использвать как хостинг для нашего сайта;
  4. Добавляем файл .gitignor для jekyll (опциональное поле). В любом случае для создания нового репозитория необходимо создать какй-нибудь файл. Выбор на данном этапе невелик. Либо это .gitignor, либо README.md. По крайней мере .gitignor нам пригодится в будущем;
  5. Нажимаем кнопку Create repository. Дело сделано.

Созданный репозиторий

Далее нажимаем кнопку Settings на панели управления репозиторием.

Настройки репозитория

На странице настройки надо найти раздел GitHub Pages и в разделе нажать на выпадающий список в категории Source. В выпавшем списке надо нажать на пункт master branch.

Выбор источника

Выбранный источник будет содержать наш проект, который мы сделали на jekyll. После нажатия на пункт master branch страница настроек перегрузится и в разделе GitHub Pages мы получим ссылку на наш сайт.

Настройки GitHub Pages

Однако, после перехода по этой ссылке, все, что можно увидеть - это страница с ошибкой 404.

Ошибка 404

Все сделано правильно, но в репозитории ничего кроме файла .gitignor нет. Пришло время переместить проект jekyll в новый, только что созданный репозиторий.

Копируем адрес репозитория

Копируем адрес нового репозитория и с помощью терминала клонируем этот репозиторий на локалный диск компьютера с помощью команды git clone <name repository>.

Клонируем репозиторий

Клонируем репозиторий

После создания директории с именем test надо перейти в нее с помощью команды cd test/.

Новая директория

Далее по обстоятельствам. Если у вас уже есть готовый и рабочий проект Jekyll, то можно просто скопировать его в эту директорию. Или, инициализировать новый, опять таки в этой самой директории. Сделать это можно командой jekyll new .. Я для данного примера создам заново проект jekyll.

После создания проекта jekyll надо запушить этот проект прямо в репозиторий на GitHub. Делаем это последовательно выполняя следующие команды (но, если вы спец по git, то сможете сделать это меньшим количеством строк кода):

 git add .
 git commit -m "initial commit"
 git push
 

После, заглянем в репозиторий на Github.

Репозиторий после загрузки

Если, сразу после этого перейти по ссылке https://losthuman.github.io/test/, то результат однозначно вас разочарует.

сайт

Надо подправить ссылки на таблицы стилей в проекте. Для чего прямо в репозитории открыть файл _config.yml.

Редактируем config

В файле _config.yml надо изменить переменные url и baseurl

Редактируем config

Для редактирования надо нажать на иконку редактирования файла. После чего откроется страница редактирования. В переменную url передадим https://losthuman.github.io, а в baseurl передадим директорию с именем репозитория /test.

редактируем переменные

Чтобы изменения вступили в силу надо их закоммитить: Указать описание коммита и нажать на кнопку Commit Changes.

Коммит

После этого вновь проверим ссылку https://losthuman.github.io/test/.

сайт

Все получилось. Сайт опубликован и для этого мы не заплатили ни копейки. Круто!

После, не забудьте перенести изменения, сделанные в репозитории GutHUb в локальную директорию. Сделать это можно в терминале с помощью команды git pull.