节点js的依赖关系管理,它不仅控制模块的版本,还控制npm和节点本身的版本

时间:2013-05-23 16:15:18

标签: node.js npm

似乎npm在管理依赖项方面做得很好 给定项目的模块,具有声明性依赖性 管理(在package.json文件中)。

我想更进一步,并以声明的方式 从源代码控制中控制哪个版本的nodejs和npm (即在某个文件中指定这些版本) 在项目'git repo中,就像package.json一样)

在新部署的计算机上,我希望只有以下步骤:

1)克隆nodejs项目的git repo 2)安装或更新npm和nodejs的版本 3)npm install

然后我使用它来进行单步部署/更新 可能是一个执行(2)和(3)并且提供的脚本 来自源控制的配置文件。

我对完全适用于Linux的解决方案非常满意, 甚至对于给定的linux风格

1 个答案:

答案 0 :(得分:1)

看看Nodejitsu对他们的Package.json做了些什么。特别是你会看到以下几行:

"engines": {
  "node": "v0.8.x"
}

然后看一下可用的节点版本管理器here。对基本用法here进行了合理的记录。

鉴于您的部署应该都有package.json,这似乎是一种非常简单的方法来实现您所需要的。应该是有限数量的“胶水”代码,而且当Nodejitsu正在这样做时,它显然是可能的。