我即将发布我的第一个npm包,我不确定我是否理解版本控制是如何工作的。
假设我有一个典型的package.json,其中包含一个版本号和一个git存储库的引用,其中包托管并发布它,一切都很好。现在让我说我更新版本号,将一些更改推送到repo并将包重新发布到npm,与新版本号一样
以前发布的软件包版本会发生什么情况 - npm是否在某个旧版本和发布版本之间保持关联?
我认为旧包不会突然开始引用新推送的回购,但不明白它是如何工作的。
答案 0 :(得分:1)
According to the docs,npm 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命令就能找到你。