首頁 > web前端 > js教程 > 如何在不失去理智的情況下從經典紗線遷移到'現代紗線”

如何在不失去理智的情況下從經典紗線遷移到'現代紗線”

DDD
發布: 2025-01-04 17:14:39
原創
732 人瀏覽過

我下午的大部分時間都花在處理紗線版本控制上。
所以事情是這樣的:Yarn 過去是透過 npm i -g Yarn 或諸如 brew 或 choco 之類的工具在全球範圍內安裝的。您從事的每個專案都會使用該全域安裝來管理依賴項,並且通常會安裝版本 1,也稱為「經典」。還有可怕的 1.22.1(至少對我來說)。
問題是,如果您在版本 1 分支中更新了紗線,舊專案可能會因為相容性問題而中斷。另外,我又花了一個下午處理另一個專案。那些本來可以更好地喝咖啡度過的下午。 ☕️

輸入「Modern yarn」-從版本 2 開始,現在是版本 4。這個版本的最酷之處在於它是透過 Corepack(處理不同版本的 Node 工具)按專案安裝的。這意味著每個項目都可以使用自己的紗線版本,這對於避免相容性問題非常有用。但要實現此功能,您必須全域卸載yarn並使用Corepack重新安裝它。
有關 Corepack 的更多資訊請參閱此處。

以下是如何逐步去除經典紗線:

步驟1️⃣:
卸載 Classic Yarn

注意:依照原先安裝的方式解除安裝yarn:

在裝有 Homebrew 的 macOS 上:

$ brew uninstall yarn
登入後複製

如果是透過 npm 安裝的:

$ npm remove yarn --global
登入後複製

第 2️⃣ 步:檢查卸載?

透過檢查版本確保紗線不再全域安裝:

$ yarn --version
登入後複製

正確卸載後,您應該會得到類似的內容。

How to Migrate from Classic Yarn to

如果卸載後您仍然得到先前的版本,請嘗試以下操作:

# On Mac:
$ which yarn

# On Win:
$ where yarn

# which/where will tell you, if and where yarn is installed. You get paths. Remove them!

$ rm -rf /usr/local/bin/yarn # use the path from before
$ rm -rf /usr/local/bin/yarnpkg # use the path from before

登入後複製

第 3️⃣ 步:核心包?
安裝並啟用核心包

如果您的電腦上沒有 Corepack,請立即安裝它。因為它仍然是專業的,所以稍後再啟用它。

如何查看是否有Corepack?

How to Migrate from Classic Yarn to

如果您還沒有安裝它:

$ npm install corepack --global
登入後複製

啟用 Corepack

$ corepack enable
登入後複製

現在,在您的專案(資料夾)中使用現代 Yarn:

$ cd projects/my-project # choose your path
$ yarn set version stable
$ yarn install
登入後複製

切換項目

如果您想將項目遷移到現代紗線,請嘗試以下操作:

$ cd projects/my-project # choose your path
$ yarn set version stable
登入後複製

或透過核心包:

$ corepack use yarn@latest
登入後複製

如果您願意,甚至可以在全球安裝新版本的「Modern yarn」:

$ corepack install --global yarn@latest
登入後複製

就我個人而言,完成所有這些操作後,我仍然遇到問題? (版本仍然是1.22.1)。這對我有用:

How to Migrate from Classic Yarn to

但是 Yarn Berry 是什麼?

Yarn Berry 是 Node.js 的套件管理系統,由 Yarn v1 的主要開發人員 Mäl Nison 創建。正式版本(v2)已於2020年1月25日發布,目前已被Babel等大型開源儲存庫採用。 Yarn Berry 由 GitHub 儲存庫中的原始程式碼管理。
這是@solleedata 的一篇文章,更詳細地解釋了 Yarn Berry,上面的描述是從其中複製的。

以上是如何在不失去理智的情況下從經典紗線遷移到'現代紗線”的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板