如何通过NPM安装私有模块

有3种方案安装NPM私有模块:

方案一:购买npm付费账号

根据npm的价格方案,只要是付费用户,不论是哪一种,都可以下载和发布不限量的私有模块。所有的私有模块都是scoped package。scope是npm的新特性。如果一个模块的名字以 @ 开头,那它就是一个scoped package:

1
@scope/project-name

每一个npm用户都有拥有一个自己的scope:当前用户名username。

方案二:自建npm私服

如果连仓库都是私有的,模块自然是私有的。这个方案好处就是可以建在自己公司内部,访问速度自然是杠杠的,而且想怎么定制就怎么定制。不过构建成本也是有的,而且需要服务器。一般稍微大规模的团队和公司会采取这种办法。

方案三:利用npm安装机制和git仓库

这个方案最经济实惠。
首先,npm install 支持 npm install <git remote url> ,其中 git remote url 的格式是:

1
<protocol>://[<user>[:<password>]@]<hostname>[:<port>][:/]<path>[#<commit-ish>]

即,如果你的代码托管在bitbucket中,可以通过如下命令安装模块:

1
npm install git+ssh://git@bitbucket.org/用户名/项目名.git#版本号

这种方式唯一的不足的地方就是,你必须要确保安装这个私有模块的机器由访问这个私有模块git仓库的权限。也就是说这台机器的公钥必须添加到git仓库中。
如果你嫌添加公钥麻烦,也可以通过:

1
npm install git+https:username:password@bitbucket.org/用户名/项目名.git#版本号

不过密码就暴露出来了。