npm和rubygems相比,各有哪些优缺点

仅用过几次,从墙内使用者身份试答(Windows环境)。安装篇1.从官方源远程安装:npm更稳定,gem经常下载不下来。2.镜像源:ruby gems在墙内有源,与官方源同步在15分钟以内,可设置更改:RubyGems 镜像;npm貌似没有太多好的源吧,这个源我没用过: cnpmjs.org: Private npm registry and web for Enterprise3.离线安装:差距不大,gem是把包下载下来,然后在命令行加参数 --local即可,npm类似。但GEM有包下载地址:RubyGems.org,要什么都能搜到,下载到本地再配合--local命令离线安装。4.http代理设置。个人感觉npm更好,它内置了命令: npm config set proxy http://username:password@server:port npm config set https-proxy http://username:pawword@server:port 但gem代理设置命令: export http_proxy却经常不明觉厉得设置失败,不过好在gem离线安装功能比较强大。包管理篇1.论是否全局安装:也许和node本身有关,npm支持全局安装或本地安装,如果是本地安装,可移植性强些,而ruby/gem,貌似没有本地安装这一概念。2.版本控制:gem支持一个包的多版本共存,如果卸载(uninstall)时,gem会问你准备卸载哪个版本,而npm包貌似没有这一特性。3.依赖管理:gem更好一些,卸载被依赖的包时gem会提醒你,这大概和gem都是全局安装,且版本控制做得更好有关。npm嘛,如果不放心,就把依赖的包放在项目里,但这样肯定会增加项目磁盘空间占用量。


    推荐阅读