【问题标题】:Jekyll site working on GitHub Pages not working locally使用 GitHub Pages 的 Jekyll 站点无法在本地运行
【发布时间】:2021-02-09 09:03:21
【问题描述】:

问题

问题:我无法获得 GitHub 托管网站的本地版本。我的 GitHub 存储库本地克隆上的 gh-pages 分支构建不正确。

具体来说, 降价文件不会以 html 格式构建到 _site 文件夹,除非它们以 YAML 前线分界 (--- newline ---) 开头,当我在 localhost 上提供它们时,它们不要拾取任何 CSS,我无法真正预览它在 GitHub 上的外观。如果 frontmatter 分界不在 markdown 文件中,则将其作为 markdown 复制到 _site 文件夹。

你可以在下面看到我有两个markdown文件ideas.mdlocal-jekyll-build-theme-trouble.md

ideas.md 有前端的东西,并构建为一个不会预览任何主题的 html 文件。

local-jekyll-build-theme-trouble.md 在我尝试在浏览器中点击它时没有frontmatter 和“构建”作为markdown 和404(除非我在URL 中添加.md 扩展名,嘘)

我是否已提交更改没有任何区别。我是否通过 'bundle exec' 运行 jekyll 并不重要。我没有收到来自jekyll 的任何错误(即使使用--trace 选项)

对比... 当我推送到 GitHub 时,两个页面似乎都可以正常工作。我可以转到https://breedlovedesign.github.io/ideas/local-jekyll-build-theme-trouble 而无需将.md 放入URL 并且https://breedlovedesign.github.io/ideas/ 服务index.html 很好。两者都获得了我的配置中指定的所有可爱的主题 CSS。

我假设这两个文件都被转换为 html,但我仔细检查了 GitHub 上的 _site 文件夹也有 index.html 和 local-jekyll-build-theme-trouble.md。

_config.yml

theme: jekyll-theme-minimal

系统信息

MacOS 10.15.6

红宝石版

~/.../devo/ideas on gh-pages*
$ rbenv version
2.6.5 (set by /Users/johnbreedlove/Sync/devo/ideas/.ruby-version)

宝石文件

gem "github-pages", "~> 209"

Jekyll 构建输出

~/.../devo/ideas on gh-pages*
$ bundle exec jekyll serve
Configuration file: /Users/johnbreedlove/Sync/devo/ideas/_config.yml
            Source: /Users/johnbreedlove/Sync/devo/ideas
       Destination: /Users/johnbreedlove/Sync/devo/ideas/_site
 Incremental build: disabled. Enable with --incremental
      Generating... 
                    done in 0.616 seconds.
 Auto-regeneration: enabled for '/Users/johnbreedlove/Sync/devo/ideas'
    Server address: http://127.0.0.1:4000
  Server running... press ctrl-c to stop.

目录结构

~/.../devo/ideas on gh-pages*
$ tree
.
├── Gemfile
├── Gemfile.lock
├── _config.yml
├── _site
│   ├── assets
│   │   ├── css
│   │   │   └── style.css
│   │   ├── fonts
│   │   │   ├──...
│   │   ├── img
│   │   │   └── logo.png
│   │   └── js
│   │       └── scale.fix.js
│   ├── index.html
│   └── local-jekyll-build-theme-trouble.md
├── index.md
└── local-jekyll-build-theme-trouble.md

10 directories, 30 files

/index.md 的内容

---
---
# icanhaz themes pls?

must I use YAML frontmatter?

【问题讨论】:

    标签: jekyll github-pages


    【解决方案1】:

    是的,您必须使用 YAML 前端。它在jekyll documentation 中明确说明。

    Jekyll 将处理任何包含 YAML 前端块的文件作为特殊文件。前面的内容必须是文件中的第一件事,并且必须采用在三点划线之间设置的有效 YAML 的形式。

    如果你想使用 Liquid 标签和变量,但在你的前面不需要任何东西,那就把它留空吧!这组中间没有任何内容的三点划线仍然会让 Jekyll 处理您的文件。

    如果它在 GitHub Pages 中工作,我假设它自己做了一些预处理。但是对于 Jekyll 来说,没有前文的文件会保持原样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-29
      • 2015-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多