最近在看axios源码,看到项目根目录下有一个名为
.npmignore
的文件,查询文档发现它是一种黑名单
机制,在包发布时用于排除某些文件或目录。
内容语法格式
跟.gitignore基本一样。下面是axios
源码里的配置内容:
**/.*
*.iml
coverage/
examples/
node_modules/
typings/
sandbox/
test/
bower.json
CODE_OF_CONDUCT.md
COLLABORATOR_GUIDE.md
CONTRIBUTING.md
COOKBOOK.md
ECOSYSTEM.md
Gruntfile.js
karma.conf.js
webpack.*.js
sauce_connect.log
可以看到忽略了二级目录下的任何.
文件,examples
目录,sandbox
目录,test
目录,webpack
、grunt
、karma
等配置文件.当然也必须有node_modules
目录。
另,如果没有指定该文件,npm默认会将.gitignore
视为.npmignore
对比项目目录和发布的包目录
还是拿axios
举例。
项目目录: