Среды
В аргументах build (или serve) можно указать среду Jekyll и значение. Затем сборка применит это значение во всех условных операторах в вашем контенте.
Например, предположим, что вы задали этот условный оператор в своём коде:
{% if jekyll.environment == "production" %}
{% include disqus.html %}
{% endif %}
Когда вы собираете свой сайт Jekyll, содержимое внутри if оператора не будет выполняться, если вы также не укажете среду production в команде сборки, например так:
JEKYLL_ENV=production jekyll build
Указание значения среды позволяет сделать определённый контент доступным только в конкретных средах.
Значение по умолчанию для JEKYLL_ENV — development. Поэтому, если вы опустите JEKYLL_ENV из аргументов сборки, значение по умолчанию будет JEKYLL_ENV=development. Любой контент внутри {% if jekyll.environment == "development" %} тегов автоматически появится в сборке.
Значения вашей среды могут быть любыми (не только development или production). Некоторые элементы, которые вы могли бы скрыть в средах разработки, включают формы комментариев Disqus или Google Analytics. И наоборот, вы можете захотеть отобразить кнопку «Изменить на GitHub» в среде разработки, но не включать её в производственные среды.
Указав этот параметр в команде сборки, вы избежите необходимости изменения значений в файлах конфигурации при переходе от одной среды к другой.
Чтобы переключать часть ваших настроек конфигурации в зависимости от среды, используйте параметр команды сборки, например --config _config.yml,_config_development.yml. Настройки в более поздних файлах переопределяют настройки в более ранних файлах.
© 2020 Jekyll Core Team and contributors
Licensed under the MIT license.
https://jekyllrb.com/docs/configuration/environments/