搭建 Jekyll 环境
需要搭建 Jekyll 环境,通过遵循 Jekyll 的规范,让 Jekyll 帮助我们生成静态网站。
安装 Ruby:Ruby 安装教程、Windows 下载
打开 CMD,执行命令安装 Jekyll:
gem install jekyll
进入仓库文件夹,执行命令:
bundle install
目录结构
每个目录的作用:
文件 / 目录 | 描述 |
---|---|
_config.yml |
保存配置数据。很多配置选项都可以直接在命令行中进行设置,但是如果你把那些配置写在这儿,你就不用非要去记住那些命令了。 |
_drafts |
drafts(草稿)是未发布的文章。这些文件的格式中都没有 title.MARKUP 数据。学习如何 使用草稿. |
_includes |
你可以加载这些包含部分到你的布局或者文章中以方便重用。可以用这个标签 {% include file.ext %} 来把文件 _includes/file.ext 包含进来。 |
_layouts |
layouts(布局)是包裹在文章外部的模板。布局可以在 YAML 头信息中根据不同文章进行选择。 这将在下一个部分进行介绍。 |
_posts |
这里放的就是你的文章了。文件格式很重要,必须要符合:YEAR-MONTH-DAY-title.MARKUP 。 永久链接 可以在文章中自己定制,但是数据和标记语言都是根据文件名来确定的。 |
_data |
格式化好的网站数据应放在这里。jekyll 的引擎会自动加载在该目录下所有的 yaml 文件(后缀是 .yml , .yaml , .json 或者 .csv )。这些文件可以经由 `site.data` 访问。如果有一个 members.yml 文件在该目录下,你就可以通过 site.data.members 获取该文件的内容。 |
_site |
一旦 Jekyll 完成转换,就会将生成的页面放在这里(默认)。最好将这个目录放进你的 .gitignore 文件中。 |
.jekyll-metadata |
该文件帮助 Jekyll 跟踪哪些文件从上次建立站点开始到现在没有被修改,哪些文件需要在下一次站点建立时重新生成。该文件不会被包含在生成的站点中。将它加入到你的 .gitignore 文件可能是一个好注意。 |
index.html and other HTML, Markdown, Textile files |
如果这些文件中包含 YAML 头信息 部分,Jekyll 就会自动将它们进行转换。当然,其他的如 .html , .markdown , .md , 或者 .textile 等在你的站点根目录下或者不是以上提到的目录中的文件也会被转换。 |
Other Files/Folders | 其他一些未被提及的目录和文件如 css 还有 images 文件夹, favicon.ico 等文件都将被完全拷贝到生成的 site 中。这里有一些使用 Jekyll 的站点,如果你感兴趣就来看看吧。 |
参考资料
- jekyll 模板
- Liquid 模板语言
问题处理
问题一
bundle install
提示Could not locate Gemfile
原因:项目下缺少 Gemfile
文件。
解决:jekyll new myblog
创建项目,将 Gemfile
文件拷贝过来。
问题二
Dependency Error: Yikes! It looks like you don't have jekyll-sitemap or one of its dependencies installed.
解决:在 Gemfile
文件中增加如下内容:
gem 'jekyll-sitemap'
gem 'jekyll-paginate'
问题三
Liquid Exception: Could not locate the included file 'file.ext' in any of ["E:/code/GitHub/Jueee/jueee.github.io/_includes"]. Ensure it exists in one of those directories and, if it is a symlink, does not point outside your site source.
相关文章