在GitHub Pages上工作的Jekyll网站在本地不工作

时间:2020-10-27 04:43:37

标签: jekyll github-pages

问题

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

具体来说, markdown文件不会以html格式构建到_site文件夹中,除非它们以YAML前题标界(---换行符---)开头,并且在我投放时他们在localhost上没有获取任何CSS,我无法真正预览它在GitHub上的外观。如果markdown文件中未包含frontmatter分界,则将其作为markdown复制到_site文件夹中。

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

ideas.md具有最重要的意义,并以html文件形式构建,无法预览任何主题。

local-jekyll-build-theme-trouble.md在尝试在浏览器中进行点击时没有先行标记和'builds'作为markdown和404s(除非我在URL中添加.md扩展名boo)

无论我是否提交更改都没有任何区别。是否通过“ bundle exec”运行jekyll都没有关系。我没有从jekyll得到任何错误(即使使用--trace选项也是如此)

相反... 当我推送到GitHub时,两个页面似乎都能正常工作。我可以转到https://breedlovedesign.github.io/ideas/local-jekyll-build-theme-trouble,而无需在网址中放入.md,而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

Ruby版本

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

Gemfile

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?

1 个答案:

答案 0 :(得分:0)

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

<块引用>

任何包含 YAML 前端块的文件都将被 Jekyll 处理为特殊文件。前面的内容必须是文件中的第一件事,并且必须采用三重虚线之间的有效 YAML 集的形式。

<块引用>

如果您想使用 Liquid 标签和变量,但不需要在您的前端添加任何内容,请将其留空!中间没有任何内容的三重虚线组仍然可以让 Jekyll 处理您的文件。

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

相关问题