创buildNPM链接实用程序 – 从下到上跟踪依赖关系

我正在创build一个NPM链接实用程序

我有一个软件包取决于大约7或8个本地开发的软件包。 我使用NPM链接将它们链接在一起。 这是目前手动,并已成为乏味,想用自动化实用程序。 我相信最好的做法是开始链接没有依赖关系的包,然后工作到最依赖的包。

看起来像这样:

A (my main NPM project) / \ \ / \ \ BCH __ / \ / \ \ / \ / \ \ DEIJK \ / \ / \ / F 

假设 – 我应该从树的底部开始,向上工作。

我可以使用哪些数据结构/algorithm来轻松实现?

考虑到上面的树, 有效的代码将如下所示:

 # start with F and work upwards cd F && npm link . cd E && npm link F && npm link . cd D && npm link . cd B && npm link D && npm link E && npm link . # etc etc 

所以我认为algorithm应该是这样的:

  1. 创build一个本地开发项目的唯一列表L(而不是远程)。
  2. 从主项目开始,向下钻取树(使用package.json查找声明的依赖关系),直到find列表L中的依赖关系集合,但在列表L中没有其他依赖关系。

之后,我不知道LOL

尝试http://aka.ms/rush – 这是您的问题的一个工业强度的解决scheme。

我问NPM,有人说现在可能还没有这样的效用,于是我开始研究它:

https://github.com/ORESoftware/npm-link-up

随意提供反馈或贡献。

除了拉什之外,还有巴别尔使用的勒纳。 但是我认为“npm-link-up”可能会更加简单和精简。

Interesting Posts