You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jekyll中监听多个源目录?关于source参数的疑问

理解Jekyll的source参数与多目录需求

你确实误解了source参数的作用——它并不是用来指定多个单独的源文件目录,而是定义Jekyll项目的根源目录。默认情况下,这个值就是你的项目根文件夹,Jekyll会自动从这个根目录开始,扫描识别所有它内置支持的特殊目录(比如_posts、_pages、_includes等)以及根目录下的独立文件(比如about.md)。

为什么source不支持多目录?

Jekyll的设计中,source是整个项目源文件的"入口根",所有的模板、内容、配置相关的文件都应该放在这个根目录(或其子目录)下。它的作用是告诉Jekyll:"从这个文件夹开始找所有需要构建的内容",而不是让你枚举具体要包含的子目录。

你的多目录需求怎么满足?

其实你根本不需要修改source来处理_posts、_pages这类目录——这些都是Jekyll默认自动识别的特殊目录:

  • _posts:存放博客文章,Jekyll会自动按日期生成文章页面
  • _pages:存放独立页面(比如关于页、联系页),只要文件里有正确的YAML头信息,就会被构建
  • 根目录下的about.md:直接放在source根目录下,Jekyll会自动将其生成为/about.html(可根据permalink配置调整路径)

如果你还有一些自定义的非标准目录需要被Jekyll纳入构建和监控范围,可以使用include配置项,在_config.yml里添加:

include:
  - my-custom-dir
  - another-dir

这样Jekyll就会把这些目录里的文件也加入构建流程,同时watch功能也会监控这些目录的变化,触发自动重新构建。

关于watch功能的补充

watch默认会监控source根目录下的所有文件和目录(除了exclude配置里排除的内容)。只要你的内容文件在source目录结构内,或者被include包含,任何修改都会触发Jekyll重新构建,不需要额外配置source来指定监控范围。

内容的提问来源于stack exchange,提问作者Keith Bennett

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:05:59