我有一个关于在npm和git上发布的良好实践的问题。
我有一些包需要(带有依赖项)一个模块(例如: bootstrap)。
当我使用"npm install bootstrap“的方法创建我的package.json时,它会在我的目录中创建一个带有bootstrap的nodes_modules,但是如果我只将"dependencies bootstrap”放在package.json中,而没有执行"npm install bootstrap“,它就不会创建"nodes_modules”。
在这两种情况下,在我发布我的包(使用npm publish)之后,当我在我的prod应用程序上安装包时,“依赖项”调用"bootstrap“normaly (使用或不使用我创建包的"nodes_modules”)。所以我的第一个问题是,我不明白是用"nodes_modules“发布我的包更好,还是不用?(因为在这两种情况下,它在实践中都是有效的。)
此外,如果我选择使用"nodes_modules“发布我的包,在我想提交我的包并使用git推送它之后,但它在我的github存储库上创建了"nodes_modules”和" package -lock.json“。所以我的第二个问题是:在github上保留"nodes_modules“和"package-lock.json”是一种很好的做法吗?或者忽略它们会更好?
谢谢你的帮忙
发布于 2019-10-29 23:55:02
您不应该在您的存储库中包含node_modules或发布它。
您应该将package.json包含在您的存储库中并发布它;我不知道如何避免这一点,因为这是您正在分发的包的基本描述。
根据文档,您应该将包锁文件签入到源代码管理,但它并未发布。我发现这种用法很奇怪,但它似乎是预期的用法。
https://stackoverflow.com/questions/58610373
复制相似问题