sinopia 的优点:
- 配置简单,对环境依赖少(仅 node 就够了)
- 支持 windows 系统下运行
- 不需要数据库,sinopia内置一个数据库了
- 是比较主流的方案
1.安装sinopia包
2.配置npm
3.启动sinopia,自动生成的工作目录如下
(通过第一个warn可以看到具体路径):
4.打开这个文件,config.yaml默认配置
如下图
5.打开浏览器地址 http://localhost:4873/
就可以看到如下内容
表示我们私有的库已经搭建好了
6.接下来我们就向库里面上传npm包
7.npm官网创建npm账户
npm网站地址:https://www.npmjs.com/
npm网站注册地址:https://www.npmjs.com/signup
8.命令行登录
9.验证登录是否成功
表示登录成功了。
10.创建npm库
11.按照提示输入相应内容
12.可以看到目录下增加了一个配置文件
13.查看配置文件
14.同级目录下新建index.js并编写内容
15.到这里我们一个简单的npm包就创建完成了,接下来我们来发布npm包
16.发布npm包
17.验证是否发布成功
换一个目录,下载我们刚刚发布的npm包
查看下载结果,下载成功
说明刚刚已经发布成功了
18.修改监听端口
监听端口默认没有,只能在本机访问,添加后可以通过外网访问。
19.团队使用
(1)安装nrm换源工具
npm install -g nrm
(2)添加私有的NPM仓库镜像地址
nrm add name http://XX.XXX.XX.XX:4873
(3)查看镜像地址列表
nrm ls 查看可用仓库
(4)使用本址的镜像地址
nrm use name
(5)安装依赖
npm install 依赖名
例如:npm install chenna_npm
(6)依赖成功,本地成功安装依赖包
20. 版本更新
npm version <update_type> -m "<message>"
其中update_type 有三种:
patch
增加一位补丁号(比如 1.1.1 -> 1.1.2)
minor
增加一位小版本号(比如 1.1.1 -> 1.2.0)
major
增加一位大版本号(比如 1.1.1 -> 2.0.0)
比如:
npm version patch -m "Version %s - v1.0.2"
最后提交更新的版本:
npm publish
21. 舍弃某个版本的模块
npm deprecate my-thing@"< 1.0.2" "critical bug fixed in v1.0.2"
22. 撤销自己发布的版本。
这只是一个测试的包,最好当然还是撤销下来
//删除要用force强制删除。超过24小时就不能删除了。自己把握好时间。
npm --force unpublish chenna_npm
23. 注意事项
a.发布的时候用国内镜像会报错,我们应使用默认的:
npm config set registry http://registry.npmjs.org
b.npm包package.json中registory属性一定要填写,每次publish npm时package.json中version版本一定要大于上一次。
c.npm publish failed put 500 unexpected status code 401这样的报错信息,往往是没有登录成功,操作npm login
d.npm包的name是唯一的,如果有同名,发布时会报错
24.最后推荐一个网址
http://javascript.ruanyifeng.com/nodejs/npm.html#toc19