npm 私域包及lerna 发布

558 阅读1分钟

Linux node 安装配置

(2)、使用wget 命令进行下载, 如:

wget npm.taobao.org/mirrors/nod…

(2)、使用tar对下载好的压缩包进行解压

tar xvf node-v10.16.0-linux-x64.tar.xz

(4)、重命令解压后的文件夹名,感觉有点不长了。把它命名为 nodejs

mv node-v10.16.0-linux-x64 nodejs

vim /etc/profile

根据实际安装路径来配置

export NODE_HOME=/usr/local/nodejs
export PATH=$PATH:$NODE_HOME/bin

进入node 的安装包 ` cd node

mkdir node_global

mkdir node_cache

npm config set prefix "node_global"

npm config set cache "node_cache"

不要忘记加全局变量
export NODE_HOME=/root/node
export PATH=$PATH:$NODE_HOME/bin

设置淘宝镜像代理

npm config set registry=https://registry.npm.taobao.org

升级node

npm install -g n
n latest

安装 npm 代理域

npm install -g verdaccio vim /root/.config/verdaccio/config.yaml 记住在最后加 listen: 0.0.0.0:4873 才能外网访问 npm install -g pm2 pm2 start verdaccio

资料

  • lerna 发布共享包遇到的一些问题 如果没有git相应的提交或者内部没有用git进行管理,需要处理一下

固定化版本处理

lerna version 0.0.0 --no-git-tag-version --no-push

强制全集发布

lerna publish --force-publish --no-git-tag-version --no-push --registry http://:4873/

批量取消发布

  • 注意变量 LERNA_PACKAGE_NAME 我检查了很久才找到lerna issue2499 这个问题会有多个变种 1.如果你在package.json 中定义了scripts 有用到 lerna exec -- echo $LERNA_PACKAGE_NAME 执行后面会搞成字符串 "echo \\$LERNA_PACKAGE_NAME" 要做一下转义 2.再有就算LERNA_PACKAGE_NAME 变量包名与packages/package.json name 一致 貌似并不是指代文件夹的名字 如果有用@pck/xx 这种的话需要注意 我的电脑是win10的所以踩了一下坑点 这个是针对全量取消发布,初期可能比较常用,后期慎用 image.png

lerna exec -- npm unpublish ^%LERNA_PACKAGE_NAME^% -f --registry http://:4873/