npm--save如何决定哪个版本和SemVer选项?

npm--save如何决定哪个版本和SemVer选项?,npm,dependencies,package,Npm,Dependencies,Package,如果我在我的计算机中键入以下内容 $ echo '{}' > package.json $ npm install pug --save 然后看看我的package.json,我会看到npm为我添加了一个依赖项 #File: package.json { "dependencies": { "pug": "^2.0.0-rc.1" } } 好极了!然而,npm如何决定获取版本2.0.0-rc.1?以及npm如何决定使用^SemVer版本修改器 作为npm

如果我在我的计算机中键入以下内容

$ echo '{}' > package.json
$ npm install pug --save
然后看看我的
package.json
,我会看到
npm
为我添加了一个依赖项

#File: package.json
{
    "dependencies": {
        "pug": "^2.0.0-rc.1"
    }
}
好极了!然而,
npm
如何决定获取版本
2.0.0-rc.1
?以及
npm
如何决定使用
^
SemVer版本修改器

作为
npm
的用户,我可以配置或告诉它使用不同的SemVer修饰符和/或下载不同的版本吗?(具体版本和/或类似“最新稳定版”的内容)


作为
npm
软件包维护者,我是否可以指定
npm
的默认行为不应该是“获取最新版本并在其上粘贴
^
”?

npm将最新的标签公开,并且
^
是默认行为,您可以使用
保存前缀
在本地对其进行更改

要获取特定版本,请在程序包名称后使用
@version
,即
npm安装pug@0.1.0
。 像composer的
最小稳定性
这样的东西在npm世界中并不存在

作为一名维护人员,除了保留SemVer和编写好代码之外,你什么都做不了:)


但无论如何
package.json
只是一个json,您可以简单地修改它们,而无需使用任何CLI命令并定义您需要的任何内容。

有用的文档,+1两者,谢谢。然而,(除非我遗漏了什么),他们并没有在我的问题中明确指出不同的背景。