以下默认已有node环境(Node.js 版本不要使用10.x,建议使用v8.15.1版本!!!)
原因就是node10的fs.write有更新!所以发布的时候会提示:Callback must be a function
1. 全局安装sinopia
npm install –g sinopia
安装好之后执行 sinopia,访问localhost:4873
出现这个页面说明安装成功,网上有一种用pm2启动sinopia的方式,用pm2启动应该是比直接启动更加稳定,但是在windows系统下pm2貌似不支持
2. 修改sinopia配置文件config.yaml
文件默认位置:C:\Users\{user}\AppData\Roaming\sinopia,下图中红框为更改后的内容
3. Sinopia用户配置
执行命令 npm adduser --registry http://localhost:4873
然后依次输入用户名,密码,邮箱
4. 使用nrm镜像管理
推荐用nrm来管理(nrm是npm registry管理工具,能够查看和切换当前使用的registry)
npm install –g nrm
安装成功之后将sinopia代理加入nrm管理
nrm ls 查看代理列表, 前方有*,为当前应用的代理
使用命令
nrm add xxx(registry名字) http://xxxxxx:4873 #添加本地的npm镜像地址
nrm use xxx #使用本地npm 镜像地址
这里我们使用sinopia,以便我们测试sinopia发布功能
5. 使用sinopia发布
这里我们是在以上的基础上进行的。
发布之前需要登录
$ npm login
依次输入正确的用户名, 密码, 邮箱
然后进入到我们要发布的包的根目录下
$ npm init
$ npm publish
发布成功之后,出现类似下图说明上传成功
6. 填坑
上传的时候可能会遇到版本问题
执行npm init ,在填写版本信息的时候,要高于当前的版本,我遇到低版本都是直接5.0.0,具体原因是sinopia会去淘宝镜像查看当前版本是否已经存在,若存在,则不能发布
=================================================
未完待续。。。