在npm包中排除测试代码?

时间:2011-12-23 15:32:23

标签: node.js npm

npm的package.json文档的devDependencies部分说明了列出您的测试依赖项,以便您的程序包用户不必删除额外的依赖项。在这种情况下,还将我的测试目录添加到.npmignore是否有意义?

2 个答案:

答案 0 :(得分:37)

是的,大多数人都这么做,这里有一些流行的Node.js模块的npmignore文件:

https://github.com/LearnBoost/socket.io/blob/master/.npmignore

其他人将他们希望在package.json files设置中发布的内容列入白名单:

https://github.com/senchalabs/connect/blob/master/package.json
https://github.com/strongloop/express/blob/master/package.json

答案 1 :(得分:1)

另一种方法是使用lib文件夹并将所有内容存储在其中。然后,您可以将package.json配置为仅考虑该文件夹。

为了工作,您还需要将主文件移至lib内并在package.json中进行指定。请参见下面的示例:

{
  "name": "your-package",
  "main": "./lib/index.js",
  "files": [
    "/lib"
  ]
}

有关更多信息,请访问this nice article