理解npm的package.json到git版本关联

时间:2014-02-25 10:53:37

标签: git npm

我即将发布我的第一个npm包,我不确定我是否理解版本控制是如何工作的。

假设我有一个典型的package.json,其中包含一个版本号和一个git存储库的引用,其中包托管并发布它,一切都很好。现在让我说我更新版本号,将一些更改推送到repo并将包重新发布到npm,与新版本号一样

以前发布的软件包版本会发生什么情况 - npm是否在某个旧版本和发布版本之间保持关联?

我认为旧包不会突然开始引用新推送的回购,但不明白它是如何工作的。

1 个答案:

答案 0 :(得分:1)

According to the docsnpm publish

  

将包发布到注册表,以便可以按名称安装。

推送到注册表的实际工件是一个gzip压缩包。

因此,运行npm install foobar@1.0.0会从npm注册表中下载foobar tarball包,并且绝不会以任何方式涉及您的git repo。运行npm install foobar@2.0.0也将从npm注册表下载。

package.json repository field是一个可选字段:

  

指定代码所在的位置。这对想要贡献的人很有帮助。如果git repo在github上,那么npm docs命令就能找到你。