【发布时间】:2016-07-17 18:38:14
【问题描述】:
在我的 JavaScript 应用程序中,我可能会在 package.json 文件中声明几十个依赖项。
检查每个依赖项并查看它们所在的版本需要一段时间。
我只想说:使用最新的主要版本,而不是最前沿的。
例如,对于像 Git 这样的工具,我通常不关心在补丁级别进行更改,但如果有新的主要版本发布,我会想要它。
在指定 npm 模块的版本时是否有类似的概念?
【问题讨论】:
-
“前沿”通常是一堆你可能想要的错误修复。
-
@ceejayoz 这可能只是我对景观的无知,但这与我通常不关心(或不想要)前沿事物的其他工具(如源代码控制工具或浏览器)有何不同?
-
另一个例子是像
grunt这样的模块。我只想要一个稳定的版本,而不是(我认为)还不稳定的前沿? -
已经在这里回答:stackoverflow.com/questions/16073603/… 请注意,这是假设最前沿的版本不是 NPM 上列出的版本。
-
@Jonathan.Brink NPM 包应该使用SemVer(很多人没有正确使用它,但这是理想的)。在 SemVer 下,版本是 X.Y.Z,其中 X 是重大的重大更改,Y 是新的但向后兼容的功能,Z 是错误修复。因此,如果您愿意使用 2.0.0,那么您可能最好使用 2.*.*,因为它将包含最新的错误修复 - 通常增加稳定性。最不稳定的版本将是全新的主要版本 IMO。
标签: node.js npm semantic-versioning