SCSS 导入失败 (Jekyll)

sak*_*isk 0 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"
;
Run Code Online (Sandbox Code Playgroud)

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

我知道问题出在这@import部分上,因为如果我评论它并在 GitHub 页面上推送构建不再失败——但我的博客很丑:)

注意:我已经尝试过Jekyll 2.1中SCSS @import 中描述的内容,但它并没有让我找到某个地方。

Dav*_*uel 5

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

  • 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 (文档) 中进行配置,它当然可以完成几乎所有的事情。

第二种选择

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

你完成了。