我有两个使用Node / NPM / Lerna来管理和分发多个软件包的Mono仓库。
项目X 包含带有单个注册表的.npmrc
文件。该注册表适用于包含三个上游源的私有Azure Feed。 命名(A,B,C)
项目Y 需要 .npmrc
文件,其中包含两个命名空间注册表。
我的问题是我的.npmrc
文件是否正在注册包含三个上游提要的软件包,为什么我还要在我的.npmrc
文件中另外注册这些上游提要之一( B < / strong>)?
据我的文档了解,上游Feed是在.npmrc
文件中注册多个命名空间包的一种替代方法。
我显然错过了一些东西。请协助。谢谢
答案 0 :(得分:0)
您正确的认为Project X正在使用我们建议的设置,它是.npmrc
的{{1}}行中的单个Azure Artifacts提要,该提要是您需要的任何其他提要的上游。
但是,Project Y可能选择使用scopes来仅使用Azure Artifacts中的有限软件包,而直接从npmjs.com中提取大多数软件包。我们通常不建议这样做,但这是一种有效的工作方式。请注意,在此配置中,Project Y不能利用上游资源的优势(例如,您保存在npmjs.com上的任何内容的副本,以防日后被删除)。
如果要迁移到推荐的配置,请尝试确保Project Y的registry=
包含一行.npmrc
:
registry=
查看它是否仍在生成(运行registry=https://dev.azure.com/.../ProjectXFeedWithUpstreams/...
时删除或重命名node_modules
)。