您好,登錄后才能下訂單哦!
這篇“Yarn與Lerna管理monorepo使用的方法”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Yarn與Lerna管理monorepo使用的方法”文章吧。
Yarn workspace 是 Yarn 提供的 monorepo 下,管理依賴的機制。對代碼倉庫下,多個 package 的依賴,進行管理:將共同的依賴,做 hosting(提升)。這樣,可以防止 package 中的包重復安裝。 workspace 機制,會在根目錄下,統一安裝依賴到 node_module,并生成 yarn.lock。單個 package 下,不需要再生成 yarn.lock。
1.Yarn 啟用工作區
yarn config set workspaces-experimental true
命令的含義:添加workspaces-experimental true
到系統全局的.yarnrc
中。
2.修改根目錄的 package.json,添加如下內容:
{ "private": true, ... "workspaces": ["packages/*"] }
配置項含義: private - 禁止發布根目錄內容 workspaces - 設置工作區,聲明 workspace 中 package 的路徑。值是一個字符串數組,支持 Glob 通配符。
Lerna 安裝依賴的方式,是使用命令lerna bootstrap
。 該命令的作用,是 cd 到 package 文件夾下的每個子文件夾,運行npm install
或yarn install
,在子文件夾中生成版本lock文件和node_module
,單獨對依賴進行管理。
配置 lerna.json
{ ... "npmClient": "yarn", "useWorkspaces": true }
配置 package.json
{ "private": true, ... "workspaces": ["packages/*"] }
Yarn 負責管理依賴,workspace 會自動對 package 的引用 ,設置軟鏈接(symlink),并且軟鏈接僅在當前 workspace 中生效。 Lerna 負責版本的發布工作,對 package 相互之間的依賴,做好版本管理。
減少項目的磁盤占用空間
Yarn 將項目中的共同依賴,提升到根目錄下進行安裝
自動設置軟鏈接,方便調試
Yarn 的 workspace 會自動對 package 的引用,設置 symlink
所有 package 使用同一個 yarn.lock,更少造成沖突且易于審查
首次安裝依賴 lerna bootstrap
安裝dependencies
依賴 `yarn add -W [pkg]
安裝devDependencies
依賴 yarn add -D -W [pkg]
-W
的含義: 安裝依賴到 workspace -D的含義: 安裝依賴到devDependencies`
以上就是關于“Yarn與Lerna管理monorepo使用的方法”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。