Yarn 是由 Facebook、Google、Exponent 和 Tilde 构建的 JavaScript 包管理器。创建它是为了删除或克服 npm 中缺少的功能。与 npm 相比,它具有
- 增强的安全性
- 离线模式
- 并行安装 - 因此安装速度更快
另一个主要区别是yarn.lock文件,但在 npm 之后^5.x.x
它们也提供了package-lock.json文件。
yarn 的命令就像 npm 一样工作:
# Starting a new project
npm init === yarn init
# Installing all the dependencies of the project
npm install === yarn or yarn install
# Adding a dependency
npm install [package] === yarn add [package] # The package is saved to your package.json immediately.
npm install [package]@[version] === yarn add [package]@[version]
npm install [package]@[tag] === yarn add [package]@[tag]
# Add a dev dependency
npm install [package] --save-dev === yarn add [package] --dev
# Upgrading a dependency
npm update [package] === yarn upgrade [package]
npm update [package]@[version] === yarn upgrade [package]@[version]
npm update [package]@[tag] === yarn upgrade [package]@[tag]
# Removing a dependency
npm uninstall [package] === yarn remove [package]
# View registry information
npm view [package] === yarn info [package]
# List installed packages
npm list === yarn list
npm list --depth === yarn list --depth=0
# Install packages globally
npm install -g [package] === yarn global addb [package]
# Run a defined package script
npm run [script] === yarn run [script]
参考文献
https://www.sitepoint.com/yarn-vs-npm/
https://scotch.io/@brian_kimo/npm-vs-yarn
和官方公告
https://code.facebook.com/posts/1840075619545360