0

如果一个 npm 模块上有多个发布者,我们如何组织我们的文件系统和进程?我们是否需要一个通用的存储库(例如 GIT)或者是否有一种聪明的方式来使用 npm 自己的发布和更新过程?

我无法理解的主要问题是软件包的初始发布者无法从软件包本身中获取最新版本,是吗?除非他将其安装为另一个包的依赖项,然后从该依赖项中更新和发布。

4

1 回答 1

-1

当然可以以这种方式使用 npm,尽管它可能不是它的意图。包的初始发布者将创建必要的结构,例如使用npm init,然后执行npm publish以使其对您的其他发布者可用。

有几件事需要考虑。首先,除非您有一个严格控制的系统来轮流编辑,否则您几乎肯定会遇到合并冲突,即多个发布者同时进行更改。像 Git 这样的版本控制系统可以帮助解决这些冲突。

其次,出于多种原因,您可能不希望您的中间版本公开可用 - 您可能希望推出一些(可能不完整的)更改供您的共同发布者构建。或者您可能只是不希望您的代码在开发过程中出现在野外。因此,如果您确实走这条路,您可能希望考虑使用私有存储库 - 例如 Sinopia 或托管解决方案之一。

希望有帮助。对于信息,我结合使用 mercurial(用于版本控制)和私有 npm 存储库(sinopia)。

于 2015-03-31T10:47:50.627 回答