如何查看Turborepo计算哈希的输入文件以排查缓存未命中?
如何让Turborepo列出哈希计算所用的输入文件(排查缓存未命中)
要排查Turborepo的未预期缓存未命中问题,你可以直接用它内置的调试参数查看哈希函数的所有输入项:
使用
--debug-hash参数:执行任务时添加这个参数,Turborepo会完整输出哈希计算过程中纳入考量的所有内容,包括具体文件、环境变量、依赖版本、任务配置等。例如运行:turbo run build --debug-hash终端会打印每个任务的哈希生成细节,你能清晰看到哪些文件被用于计算哈希,以及是否有未被追踪的文件、配置变更等因素影响了缓存键。
搭配
--verbose获取更细粒度信息:如果需要更详细的文件匹配、依赖解析过程,可以结合--verbose参数:turbo run build --debug-hash --verbose这会输出更多底层细节,帮助你定位到比如某个被误纳入哈希的忽略文件、依赖版本的隐性变更等问题。
另外需要注意,确保本地和远程缓存的turbo.json配置一致,尤其是cacheInclude和cacheExclude规则——这些规则直接决定了哪些文件会被纳入哈希计算,配置不一致也会导致远程缓存未命中。
内容的提问来源于stack exchange,提问作者Mike Hogan
相关产品推荐
相关产品推荐

