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

npm publish默认忽略哪些文件名模式?src目录发布异常咨询

npm publish 默认忽略规则及src目录被排除问题解答

一、npm 默认忽略的特定模式

npm发布包时,以下文件/目录会被默认忽略,除非显式加入package.json的files列表,或通过.npmignore/.gitignore的!规则取消忽略:

  • 版本控制相关目录:.git/、.svn/、.hg/
  • 依赖安装目录:node_modules/
  • 日志文件:npm-debug.log*、yarn-debug.log*、yarn-error.log*
  • 临时/系统文件:*.swp、*.tmp、._*(Mac隐藏文件)
  • 特定配置文件:除项目根目录外的.npmrc文件
  • 若项目存在.gitignore,npm会自动继承其中的所有忽略规则(除非存在.npmignore,此时.gitignore规则会被覆盖)

二、官方文档说明

npm官方文档在package.json的files字段、npmignore相关章节中明确了上述规则,核心发布规范均在官方文档中,无需查找非源码类额外文档。

三、src目录被排除的排查建议

src目录不属于npm默认忽略的模式,你遇到的多层嵌套src被排除的情况,大概率是以下原因:

  1. 项目根目录的.gitignore中存在src/或src/**的忽略规则——npm会默认继承.gitignore的规则,即使没有.npmignore
  2. 嵌套子目录中存在.gitignore文件,其中的规则影响了src目录的包含
  3. 可通过npm publish --dry-run命令模拟发布,查看实际会被包含的文件列表,快速定位问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 18:43:28