npm包版本管理的坑

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

在最开始接触一个依赖的时候,把关于^~等转载请注明出处:www.tangshuang.net【作者:唐霜】符号的版本管理弄清楚的时候,觉得这个好伟【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】大,然而当躺进坑里,才发现,这东西是害人【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】的。对一个第三方package的依赖,默【版权所有,侵权必究】【转载请注明来源】认安装会在版本前面加^,当第二次执行np【访问 www.tangshuang.net 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。m install的时候,如果发现npm未经授权,禁止复制转载。【作者:唐霜】服务器上存在比该版本大的小版本号,就会使【原创内容,转载请注明出处】【关注微信公众号:wwwtangshuangnet】用新的版本的package。然而,然而!未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】当新的版本对当前环境不兼容时,特别是那些原创内容,盗版必究。【未经授权禁止转载】被依赖的很深的package发生这种情况著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshuangnet】,对于开发者而言,简直就是噩梦。昨天做b【作者:唐霜】【本文受版权保护】uild的时候一切还正常,连代码都没改动本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。,今天再做build的时候,却怎么也通不【本文首发于唐霜的博客】【转载请注明来源】过了。造成这个问题的原因,是因为所有的p【作者:唐霜】【原创不易,请尊重版权】ackage的版本都向后兼容,虽然你的项【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】目代码没有变,但是你的第三方依赖代码变了未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】,如果新的第三方代码不兼容你当前的nod【本文受版权保护】本文作者:唐霜,转载请注明出处。e版本,那么就是一个惨字。解决的唯一办法【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。,是通过升级npm版本,升级之后,pac【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.netkage都是扁平化的,然后再在packa【关注微信公众号:wwwtangshuangnet】【本文受版权保护】ge.json文件中,把那个不兼容的pa【转载请注明来源】【版权所有】唐霜 www.tangshuang.netckage固定在较低的版本中。

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

我个人的观点是,一个项目,之所以能够正常【本文首发于唐霜的博客】【转载请注明来源】运行,是因为在开发时选择了适合的版本,而本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.net且是经过测试的。倘若在第二次运行时,代码【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。不同,那么怎么保证之前的测试是有效的呢?著作权归作者所有,禁止商业用途转载。【版权所有,侵权必究】因此,npm install不应该自作主转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。张的从服务器选择更新的版本,而是在本地安【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】装允许的最新版本。比如jquery,安装原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.net本地所有package中允许的最新版本,【本文受版权保护】原创内容,盗版必究。而不是比本地允许的版本还要新的版本。

本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。未经授权,禁止复制转载。