SCSS导入失败(Jekyll)

时间:2016-06-29 19:26:51

标签: sass jekyll github-pages

我正在尝试在GitHub页面上设置Jekyll。在本地我没有构建/执行警告/错误,即使我使用bundle exec jekyll serve --safe。但导入命令在GitHub页面上失败。我得到的错误是:

  

您的SCSS文件css/main.scss在第49行有错误:要导入的文件未找到或不可读:base

我没有更改main.scss的内容:

// Import partials from `sass_dir` (defaults to `_sass`)
@import
    "base",
    "layout",
    "syntax-highlighting"
;

_config.yml中明确定义sass_dir变量没有用。有没有办法在本地调试scss文件?我尝试使用sass命令,但它似乎不适用于scss文件。

我知道问题出在@import部分,因为如果我发表评论并推动GitHub页面上的构建不再失败 - 但我的博客很难看:)

注意:我已经尝试了SCSS @import in Jekyll 2.1中描述的内容,但它没有让我到处找。

1 个答案:

答案 0 :(得分:4)

好的,明白了!这很简单。

  • Github页面正在从您的存储库根目录运行:faif.github.io
  • 当您的_config.yml文件位于/blog时,它看不到所有内容的默认设置。例如:scss导入的路径为faif.github.io/_sass并导致错误,因为您的文件位于faif.github.io/blog/_sass

第一个选项

在根位置移动_config.yml并调整sass, includes, ...个变量。我不认为这是最好的选择,但如果可以在jekyll 3.1.x(documentation)中进行配置,它几乎可以完成。

第二个选项

  • 创建博客存储库
  • 克隆
  • git checkout -b gh-pages因为项目存储库仅从gh-pages分支发布
  • 在此存储库中复制博客文件夹内容
  • 从faif.github.io存储库中删除您的博客文件夹
  • baseurl
  • 中将/blog更改为_config.yml
  • 提交并推送

你完成了。