NPM 依赖包版本范围控制

广告位招租
扫码页面底部二维码联系

基本概念就不多说了,主要是想在项目中,使【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。用“范围”控制的优势,写了一个依赖版本号原创内容,盗版必究。未经授权,禁止复制转载。之后,未来依赖包升级可以不需要手动升级该本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。版本号,可自动安装最新兼容版本。

本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshua【作者:唐霜】【作者:唐霜】ngnet】转载请注明出处:www.tangshua【未经授权禁止转载】原创内容,盗版必究。ng.net

常规兼容

常规情况下,需要掌握 ^, ~, x, 本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。– 这几个版本控制符即可。例【转载请注明来源】著作权归作者所有,禁止商业用途转载。如 ^1.0.0 相当于 1.x,~1.【原创不易,请尊重版权】转载请注明出处:www.tangshuang.net1.0 相当于 1.1.x。

本文作者:唐霜,转载请注明出处。原创内容,盗版必究。

实验阶段的包

版本号以 0 开头的包都是实验阶段的。例未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。如 0.0.1, 0.1.0 这种包都是未经授权,禁止复制转载。原创内容,盗版必究。处于实验阶段,还为发布正式版本,因此,在【原创不易,请尊重版权】【转载请注明来源】正式环境使用时要小心。基于这种情况,我建【版权所有】唐霜 www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】议直接写死版本号,而不要采用 ^ 或 ~【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】,因为你怎么知道新加的实验功能是否符合你【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】的预期。

【版权所有】唐霜 www.tangshu【访问 www.tangshuang.net 获取更多精彩内容】本文作者:唐霜,转载请注明出处。ang.net著作权归作者所有,禁止商业用途转载。

当然,纯理论探讨,实验阶段的包也可以 ^【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】 或 ~,但是相对而言,全部降一位。例如【关注微信公众号:wwwtangshuangnet】【作者:唐霜】 ^0.1.0 可以兼容 0.1.1 版【版权所有】唐霜 www.tangshuang.net【原创内容,转载请注明出处】本,但不兼容 0.2.0 版本。如果 ~转载请注明出处:www.tangshuang.net原创内容,盗版必究。0.0.1,相当于没写 ~。

【版权所有】唐霜 www.tangshu【原创不易,请尊重版权】未经授权,禁止复制转载。ang.net【转载请注明来源】

Prerelease

和实验阶段包又不同,它处于预发布阶段。比【本文受版权保护】本文作者:唐霜,转载请注明出处。如在发布 3.0.0 之前,可能需要公测【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。一段时间,各种修 bug。但理论上,pr【作者:唐霜】【版权所有】唐霜 www.tangshuang.neterelease 相当于正式版的实验阶段【作者:唐霜】本文作者:唐霜,转载请注明出处。

本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshua【未经授权禁止转载】【版权所有】唐霜 www.tangshuang.netng.net【本文首发于唐霜的博客】【版权所有】唐霜 www.tangshu【本文受版权保护】本文作者:唐霜,转载请注明出处。ang.net

对于 prerelease 版本而言,前【作者:唐霜】本文作者:唐霜,转载请注明出处。面的常规方案和实验阶段常规方案,都不包含【本文首发于唐霜的博客】【版权所有】唐霜 www.tangshuang.net prerelease 版本,也就是说 【本文首发于唐霜的博客】【本文首发于唐霜的博客】^3.0.0 并不包含 3.1.0-al【未经授权禁止转载】【转载请注明来源】pha.1。但是反过来,3.1.0-al【作者:唐霜】转载请注明出处:www.tangshuang.netpha.1 属于 3.1.0 的一部分,【版权所有,侵权必究】未经授权,禁止复制转载。用一个比喻来类比:A-, A, A+ 都【访问 www.tangshuang.net 获取更多精彩内容】【版权所有】唐霜 www.tangshuang.net属于 A 等。但是 ~A, ^A 都只包本文作者:唐霜,转载请注明出处。【原创内容,转载请注明出处】含 A, A+ 而不包含 A-,类比数学著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】上的概念,就是复数中虚数部分。

本文版权归作者所有,未经授权不得转载。【转载请注明来源】

那么怎么控制 prerelease 的范转载请注明出处:www.tangshuang.net【转载请注明来源】围呢?

【原创内容,转载请注明出处】本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshua未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】ngnet】

^3.0.0-alpha 将包含 3.0【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。.0-alpha.0, 3.0.0-be【原创不易,请尊重版权】【原创不易,请尊重版权】ta.0, 3.0.0-rc, 3.0.【作者:唐霜】本文版权归作者所有,未经授权不得转载。0, 3.1.0…,但不包含【关注微信公众号:wwwtangshuangnet】著作权归作者所有,禁止商业用途转载。 3.1.0-alpha.x。也就是说,本文作者:唐霜,转载请注明出处。【作者:唐霜】^ 或 ~ 可以包含所指示的版本的 pr【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。erelease 版本,以及兼容该版本的【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。高版本(不含高版本的 prereleas【关注微信公众号:wwwtangshuangnet】【访问 www.tangshuang.net 获取更多精彩内容】e 版本)。

【转载请注明来源】本文版权归作者所有,未经授权不得转载。【转载请注明来源】【未经授权禁止转载】

升级 prerelease 可以使用 npm version prerelease 进行升级。

本文作者:唐霜,转载请注明出处。【关注微信公众号:wwwtangshua【原创内容,转载请注明出处】【原创内容,转载请注明出处】ngnet】原创内容,盗版必究。

两个 prerelease 版本号谁的版未经授权,禁止复制转载。【未经授权禁止转载】本更高呢?prerelease 末尾版本【版权所有,侵权必究】【原创不易,请尊重版权】号部分纯粹以字母顺序进行排序,因此 rc【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。 > beta > alph【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。a,而且,由于纯粹按字母排序,所以没有 【版权所有】唐霜 www.tangshuang.net【本文受版权保护】alpha.x 这种使用 x 的表示方法【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。。因此,如果要控制为只包含 prerel【版权所有】唐霜 www.tangshuang.net转载请注明出处:www.tangshuang.netease 的版本,没有直接的办法,只能使【原创不易,请尊重版权】【作者:唐霜】>=3.0.0-alpha <3.0.0-beta 这种表示方法。

【关注微信公众号:wwwtangshua【访问 www.tangshuang.net 获取更多精彩内容】【本文首发于唐霜的博客】ngnet】转载请注明出处:www.tangshua【原创不易,请尊重版权】【转载请注明来源】ng.net