环境变量 Environments

build(或 serve)参数中,你可以指定一个 Jekyll 环境和对应的数值。这个数值将会被应用到你的内容中的条件语句中。

例如,假设你在代码中设置了以下条件语句:

{% if jekyll.environment == "production" %}
   {% include disqus.html %}
{% endif %}

当构建你的 Jekyll 站点时,在构建命令中指定了 production 环境, if 语句中的内容才会被执行,如下所示:

JEKYLL_ENV=production jekyll build

指定一个环境变量值,执行命令时带上变量值特定的内容才会生效。

JEKYLL_ENV 的默认值是 development。因此,如果在构建参数中省略 JEKYLL_ENV,默认值将是 JEKYLL_ENV=development。任何在 {% if jekyll.environment == "development" %} 标签中的内容将自动出现在构建中。

环境变量值你可以自定义(不限于 developmentproduction)。一些你可能想在开发环境中隐藏的元素包括 Disqus 评论表单或 Google Analytics。相反地,你可能希望在开发环境中展示一个 “在 GitHub 中编辑” 的按钮,但不包含在生产环境中。这些都可以通过环境变量实现。

通过在构建命令中指定选项,可以避免从一个环境切换到另一个环境时需要手动修改配置文件的值或者代码。

要根据环境切换部分配置设置,请使用 构建命令选项,例如 --config _config.yml,_config_development.yml。后面的文件中的设置会覆盖前面文件中的设置。