yarn和npm的對比
-
速度
npm 是按照隊列執行每個 package,也就是說必須要等到當前 package 安裝完成之后,才能繼續后面的安裝。 而 Yarn 是同步執行所有任務,提高了性能。
-
安裝版本統一
Yarn 默認會生成這樣的鎖定文件 npm 要通過 shrinkwrap 命令生成 npm-shrinkwrap.json 文件,只有當這個文件存在的時候,packages 版本信息才會被記錄和更新。 npm5.0之后新增了類似yarn.lock的 package-lock.json。如果軟件包的根目錄中同時存在package-lock.json和npm-shrinkwrap.json,package-lock.json將被完全忽略。
-
更簡潔的輸出
npm 的輸出信息比較冗長。在執行 npm install <package> 的時候,命令行里會不斷地打印出所有被安裝上的依賴。 Yarn 簡潔太多:默認情況下,結合了 emoji直觀且直接地打印出必要的信息,也提供了一些命令供開發者查詢額外的安裝信息。