NPM 包包括 .DS_Store

ice*_*itz 5 pack npm

根据文档https://docs.npmjs.com/files/package.json#files,如果将目录放在package.jsonfiles部分中,则无论如何都会排除指定目录中的某些文件 - 包括. DS_Store。此外,.gitignore.npmignore中的文件应排除package.json文件部分中指定的任何目录内的文件。

我的package.json files条目是["src", "bin"],但是当我运行时,src中的.DS_Store文件仍然进入 tarball 中。.DS_Store也在.gitignore中,但无论设置如何,npm 都应该排除它。npm pack

README.md文件已正确自动包含,但如果不明确包含我想要包含在package.json部分中的所有文件扩展名,我就无法让.DS_Store消失。files

我尝试了 NPM 6.4.1 和 6.9.0 并得到了相同的结果,我在这里遗漏了什么吗?

小智 0

根据 npm

\n\n
\n

如果\xe2\x80\x99s没有.npmignore文件,但有.gitignore文件,那么\n npm将忽略.gitignore文件匹配的内容。如果您想要包含.gitignore文件排除的内容,您可以创建一个空的.npmignore文件来覆盖它。

\n
\n\n

我建议您创建一个新的.npmignore文件来覆盖您的.gitignore。正如您上面提到的,空白的.npmignore将默认忽略 .DS_Store。npm 可能在解析您的.gitignore时遇到一些问题。

\n