所以我在读这。
据我所知,我有点搞不懂它是如何工作的:
如果我只有.gitignore在我的回购npm将使用.gitignore,但如果我有.gitignore和.npmignore npm只会阅读.npmignore,对吗?还是两本都读?
需要知道,如果它只是阅读.npmignore,我也必须复制粘贴从.gitignore的东西。
发布于 2019-11-24 07:57:54
否则它会同时读到
作为这里提到的,它将只读取.npmignore
如果希望包含被
.gitignore文件排除的内容,可以创建一个空的.npmignore文件来覆盖它。
虽然,杰夫·迪基提倡:"为了上帝的爱,不要使用.npmignore“
但是,您可能不知道的是,我添加npmignore文件的小操作实际上导致
npm现在查阅该文件而不是gitignore文件。 这是一个很大的问题--我现在只是通过添加这个.npmignore来隐藏我的测试目录,就把我所有的AWS凭证泄露给了公众。 更糟糕的是我可能不知道发生了什么。npm publish没有显示打包的文件(它实际上使用npm 6)。 我没有看到npm注册表上的文件。 查看文件的唯一真正方法是将包添加到项目中并手动查看node_modules内部。也许有一天,出于好奇,我会这么做,并发现我的AWS证书已经在外面呆了几个月了。
解决办法/更安全的备选办法:
不过,
npm支持白名单,只需向package.json添加一个文件属性,并将您想要添加到项目中的所有内容都添加到其中。 现在,只有在文件中指定的文件才会包含在项目中,而您的dotfile将被忽略。
https://stackoverflow.com/questions/59015606
复制相似问题