node.js – 我是否应该.npmignore我的测试?

我应该把什么放在.npmignore?

测试?像.travis.yml,.jshintrc?运行模块时不需要的任何东西(readme除外)?

我找不到任何指导。

解决方法

正如你可能发现的,NPM没有真正地说明什么应该在那里,而是他们有一个 list of ingored-by-default files.许多人甚至不使用它作为一切在你的.gitignore在npm默认情况下被忽略如果.npmignore不存在。此外,默认情况下,许多文件已被忽略,不管设置如何,并且一些文件总是被排除在被忽略之外,如上面的链接所述。

有没有很多官方在什么总是应该在那里,因为它基本上是.gitignore的一个子集,但从我从使用节点5年ish收集,这里是我想出了。

注意:通过生产我的意思是任何时候你的模块是由某人使用,而不是在模块本身开发。

预发布交叉编译源

优点:如果您使用的语言交叉编译成JavaScript,您可以在发布前预先编译,而不是包括.coffee文件在包中,但保持跟踪它们在您的git存储库。

构建文件剩菜

优点:使用像node-gyp之类的东西的人可能有在生成期间生成的对象文件,永远不应该进入包。
缺点:这应该总是进入.gitignore。如果你使用一个.npmignore文件,你必须把这些东西放在这里,因为它从npm的角度覆盖了.gitignore。

测试

优点:在您的生产代码中减少行李。
缺点:您无法在活动环境中运行测试,因为存在系统特定的故障,例如导致测试失败的节点运行的过期版本。

连续集成设置/元文件

优点:再次,减少行李。对于使用,测试或查看代码,不需要诸如.travis.yml之类的内容。

非自述文档和代码示例

优点:减少行李。有些人在思想学派中存在,如果你不能在自述中表达最少的可行功能,你的模块太大了。缺点:人们不能在自己的文件系统上看到详尽的文档和代码示例。他们必须访问存储库(这也需要互联网连接)。

Github-pages对象

优点:你肯定不需要用CNAME文件或占位符index.htmls乱丢你的版本,如果你使用你的模块服务双重作为一个gh页面存储库。

bower.json和朋友

优点:如果你决定在发布之前建立你的依赖,你不需要最终用户安装bower然后安装更多的东西。我个人,把这些东西放在包里。当我做一个npm安装,我应该只依靠npm,没有其他外部来源。

基本上,你应该使用它,如果你想要保留在你的npm包,但不是你的npm存储库。这不是一个长列表的项目,但npm宁愿建立的功能,比让人们困在他们的包中的不相关的对象。

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...