搞前端开发这几个工具命令都会用到,介绍下这几个工具的用处及之间的关系。
nrm:
描述:
nrm(npm registry manager )是npm的镜像源管理工具,有时候国外资源太慢,使用这个就可以快速地在 npm 源间切换。使用:
sudo npm i -g nrm // 安装
nrm ls // 查看所有的npm源和当前正在使用的npm源
nrm add name url // 添加自定义的npm源,name 为自定义源名称 ,url为npm源链接
nrm use name // 切换npm源
nvm:
安装nvm,使用 brew install nvm
1.mkdir ~/.nvm
2.~/.zshrc 中添加如下代码
# This loads nvm
export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/nvm.sh" ] && . "/usr/local/opt/nvm/nvm.sh" # This loads nvm
[ -s "/usr/local/opt/nvm/etc/bash_completion" ] && . "/usr/local/opt/nvm/etc/bash_completion"
2.1如果是M1电脑
# This loads nvm
export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && . "/opt/homebrew/opt/nvm/nvm.sh" # This loads nvm
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && . "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion
nvm(node.js version management),顾名思义是一个nodejs的版本管理工具。通过它可以安装和切换不同版本的nodejs。下面列出下载、安装及使用方法。
- 使用:
nvm install stable //安装最新稳定版 node
nvm install <version> // 安装指定版本,可模糊安装,如:安装v4.0.0,可nvm install v4.0.0 或者 nvm install 4.4
nvm uninstall <version> //删除已安装的指定版本,语法与install类似
nvm use <version> //切换使用指定的版本node
nvm alias default <version> //可以指定默认打开终端时的node版本
nvm ls //列出所有安装的版本
nvm ls-remote // 列出所有远程服务器的版本(官方node version list)
nvm current //显示当前的版本
nvm alias <name> <version> //给不同的版本号添加别名
nvm unalias <name> //删除已定义的别名
nvm reinstall-packages <version> //在当前版本 node 环境下,重新全局安装指定版本号的 npm 包
npm
描述:
npm 是 JavaScript 世界的包管理工具,并且是 Node.js 平台的默认包管理工具。通过 npm 可以安装、共享、分发代码,管理项目依赖关系。使用:
sudo npm install npm -g
npm install xxx //安装模块如不指定版本号,默认会安装最新的版本,安装但不写入package.json
npm install xxx 0.0.1 //安装指定版本的模块
npm install --save xxx //安装并把模块的版本信息保存到dependencies(生产环境依赖)中,即你的package.json文件的dependencies字段中
npm install --global xxx
npm install --save-dev xxx //安装并把模块版本信息保存到devDependencies(开发环境依赖)中,即你的package.json文件的devDependencies字段中
npm install --save-optional xxx //安装并把模块安装到optionalDependencies(可选环境依赖)中,即你的package.json文件的optionalDependencies字段中
npm install --save-exact xxx //精确的安装指定版本的模块,dependencies字段里每个模块版本号前面的^会取消掉
其他命令:
npm init //在当前目录生成一个package.json文件,这个文件中会记录一些关于项目的信息,比如:项目的作者,git地址,入口文件、命令设置、项目名称和版本号等等,一般情况下这个文件是必须要有的,方便后续的项目添加和其他开发人员的使用。
npm list 或 npm ll 或 npm la 或 npm ls //列出已安装模块, ll 、 ls 、 la 三个命令意思都一样,但是列表的展示方式不一样
npm show xxx //显示模块详情
npm update //升级当前目录下的项目的所有模块
npm update xxx //升级当前目录下的项目的指定模块
npm update -g xxx //升级全局安装的指定模块
npm uninstall xxx //删除指定的模块
yarn
描述:
Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。就像我们可以从官方文档了解那样,它的目的是解决这些团队使用 npm 面临的少数问题,即:
1.安装的时候无法保证速度/一致性
2.安全问题,因为 npm 安装时允许运行代码
Yarn 同样是一个从 npm 注册源获取模块的新的 CLI 客户端。注册的方式不会有任何变化 —— 你同样可以正常获取与发布包。使用:
npm install -g yarn //安装yarn
brew install yarn //Mac 可以使用Homebrew安装
yarn --version //获取yarn版本
yarn init
yarn add //添加依赖
yarn add less less-loader --dev //添加dev依赖
yarn remove //移除
yarn dev/build
其他命令
yarn list //查询依赖
yarn list --depth=0 //添加参加只显示一级依赖
yarn why bytes //查询安装原因(依赖关系)
yarn upgrade //升级包
yarn outdated //查询已过时的安装包
fvm
描述:
主要是管理flutter的sdk版本,跟nvm一样。nvm是管理node.js版本。使用
安装:
1.首先,添加homebrew的tap源:
brew tap dashixiong91/fvm
2.添加完tap之后,你可以安装fvm
brew install fvm
3.拷贝以下内容到你的 .bashrc|.zshrc ... 文件中
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
export FVM_DIR="$HOME/.fvm"
source "/usr/local/opt/fvm/init.sh"
3.1如果是M1
# This loads flutter
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
export FVM_DIR="$HOME/.fvm"
source "/opt/homebrew/opt/fvm/init.sh" # This loads fvm
命令:
fvm --help //打印帮助信息
fvm install x.x.x //下载对应版本
fvm use x.x.x //使用对应版本
fvm alias xxx //设置别名
fvm list //列出已安装所有版本
fvm list-remote [release_type] //列出已发布
总结:
nrm主要控制和切换npm的镜像源,nvm主要是做node的版本切换处理,fvm主要是做flutter sdk版本切换处理,npm和yarn主要做项目中依赖的库的管理。