Файл CSS не найден при отправке проекта Jekyll в удаленную ветку gh-pages и использовании jekyll-compass

Я создавал свой сайт с помощью css, и все работало нормально, как локально, так и удаленно. Потом я захотел перейти на sass. Я установил jekyll-compass, и теперь мои файлы sass выводятся в виде файлов css в моей папке _site/css. Все работает хорошо локально, но когда я отправляю их на Github, мои стили не применяются, и я получаю 404 в этом файле css. Что я делаю не так?


person user1113828    schedule 21.04.2014    source источник


Ответы (2)


Вместо того, чтобы задавать для вывода визуализированных файлов SASS значение /_site/css, задайте для вывода только /css (корневой уровень сайта).

Происходит то, что локально SASS работает нормально и выводит данные в каталог /_site/, как и следовало ожидать. Но в рабочей среде на страницах GitHub (где не поддерживается гем jekyll-compass) ваш CSS вообще не выводится в /_site, потому что плагин там не выполняется.

Неважно, что он работает локально оттуда, потому что GitHub Pages снова запускает команду jekyll build после того, как вы нажмете, и сгенерирует /_site/ заново. Таким образом, все, что он не поддерживает (например, jekyll-compass), не попадает в рабочую версию вашей папки /_site.

Предложенный мной обходной путь работает, потому что вместо того, чтобы выводить окончательный CSS в каталог, который перезаписывается при отправке на страницы GitHub, вместо этого он записывает его в каталог, который сохраняется даже при новой сборке каталога /_site/.

Также следует отметить, что Jekyll 2.0 будет поддерживать SASS, и вы даже можете использовать 2.0 альфа-версия локально, если хотите (хотя GH Pages не будет обновлена ​​до версии 2.0, пока она не будет официально выпущена).

person Joel Glovier    schedule 23.04.2014
comment
Спасибо за объяснение. Как изменить место назначения вывода SASS в Jekyll? - person user1113828; 23.09.2014
comment
Обратите внимание, что GitHub Pages был обновлен до Jekyll 2.0 и теперь будет работать с Sass должным образом. - person Joel Glovier; 23.09.2014

Страницы GitHub поддерживают очень мало плагинов, раньше их не было, а теперь их три. См. эту страницу для получения дополнительной информации.

Вам нужно будет скомпилировать SASS и зафиксировать сгенерированные файлы CSS.

person David Hutchison    schedule 23.04.2014