<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Yarn</id>
	<title>Yarn - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Yarn"/>
	<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Yarn&amp;action=history"/>
	<updated>2026-07-15T19:55:51Z</updated>
	<subtitle>在这个wiki上该页的修订历史</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://arolstar52-zhtest.hf.space/index.php?title=Yarn&amp;diff=4208790&amp;oldid=prev</id>
		<title>imported&gt;Gdlittlefish 来自 2026年5月23日 (六) 12:27</title>
		<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Yarn&amp;diff=4208790&amp;oldid=prev"/>
		<updated>2026-05-23T12:27:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox software&lt;br /&gt;
| title = Yarn&lt;br /&gt;
| logo = Yarn-logo-kitten.svg&lt;br /&gt;
| developer = [[Meta Platforms]]&lt;br /&gt;
| released = {{Start date and age|df=y|2016|06|18}}&amp;lt;ref&amp;gt;{{cite web |url=https://github.com/yarnpkg/yarn/releases/tag/0.2.0 |title=Earliest releases of yarn |website=GitHub |access-date=Jun 18, 2016 |archive-date=2023-02-27 |archive-url=https://web.archive.org/web/20230227154732/https://github.com/yarnpkg/yarn/releases/tag/0.2.0 |dead-url=no }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
| programming language = [[JavaScript]]&lt;br /&gt;
| platform = [[跨平臺]]&lt;br /&gt;
| genre = [[套件管理器]]&lt;br /&gt;
| repo = https://github.com/yarnpkg&lt;br /&gt;
| website = {{URL|https://yarnpkg.com}}&lt;br /&gt;
}}&lt;br /&gt;
{{for|英文单词“yarn”的含义|纱线}}&lt;br /&gt;
Yarn 是其中一種主要的 [[JavaScript]] 套件管理器，&amp;lt;ref&amp;gt;{{Cite web|date=2022-09-28|title=Package management basics|url=https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Package_management#a_rough_guide_to_package_manager_clients|website=MDN|access-date=2023-04-10|archive-date=2023-05-21|archive-url=https://web.archive.org/web/20230521000109/https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Package_management#a_rough_guide_to_package_manager_clients|dead-url=no}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Cite web|date=2022-02-05|title=5 best JavaScript Package Managers|url=https://www.dunebook.com/best-javascript-package-managers/|website=Dunebook.com|access-date=2023-04-10|archive-date=2023-04-21|archive-url=https://web.archive.org/web/20230421002318/https://www.dunebook.com/best-javascript-package-managers/|dead-url=no}}&amp;lt;/ref&amp;gt; 由 Meta（前身為 Facebook）於 2016 年應對 Node.js JavaScript 平臺執行環境所開發。 作為 [[Npm|NPM]] 套件管理器的替代方案，Yarn 是由 Facebook、Exponent（現在為 Expo.dev）、谷歌和 Tilde（[[Ember.js]] 背後的公司）協力開發，主要是用於解決大型基準原始程式碼的一致性、安全性和性能問題。&amp;lt;ref&amp;gt;{{Cite web|date=2016-10-11|title=Yarn: A new package manager for JavaScript|url=https://engineering.fb.com/2016/10/11/web/yarn-a-new-package-manager-for-javascript/|access-date=2021-11-22|website=Engineering at Meta|language=en-US|archive-date=2023-06-15|archive-url=https://web.archive.org/web/20230615150815/https://engineering.fb.com/2016/10/11/web/yarn-a-new-package-manager-for-javascript/|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 功能 ==&lt;br /&gt;
使用者可以撰寫Yarn平臺的外掛。&lt;br /&gt;
&lt;br /&gt;
=== 約束程式碼（constraints） ===&lt;br /&gt;
Yarn 約束程式碼可以讓用戶在工作空間範圍內中為其相依套件或清單字段強制規定執行規則。&lt;br /&gt;
&lt;br /&gt;
=== 離線快取（Offline cache） ===&lt;br /&gt;
下載的套件能被以單一檔案的方式快取或儲存。&lt;br /&gt;
&lt;br /&gt;
=== 隨插即用（Plug&amp;#039;n&amp;#039;Play） ===&lt;br /&gt;
[[隨插即用]]（Plug&amp;#039;n&amp;#039;Play）能讓用戶在沒有 &amp;lt;code&amp;gt;node_modules&amp;lt;/code&amp;gt;資料夾的情況下執行 Node 專案，定義了使用 隨插即用控制（Plug-n-Play-control）檔案分析相依性套件檔案的方式或位置。此功能專門在修復結構不良的 &amp;lt;code&amp;gt;node_modules&amp;lt;/code&amp;gt;架構，從而加快 Node.js 應用程式的啟動時間。&lt;br /&gt;
&lt;br /&gt;
=== 外掛（Plugins） ===&lt;br /&gt;
外掛（Plugins）可以添加新的解析器（resolvers）、接收器（fetchers）、連結器（linkers）、指令（commands），也可以註冊一些事件或者互相整合，Yarn的大部分功能都是通過外掛實作的，包括&amp;lt;code&amp;gt;yarn add&amp;lt;/code&amp;gt;和&amp;lt;code&amp;gt;yarn install&amp;lt;/code&amp;gt;，也是預先安裝好的外掛。&lt;br /&gt;
&lt;br /&gt;
=== 協定（Protocols） ===&lt;br /&gt;
用戶可以定義將使用哪種協定來解析某些套件，例如，git 協定是用於從 Git 存儲庫下載公用套件，patch 協定用於建立原始套件的修正副本。&lt;br /&gt;
&lt;br /&gt;
=== 發布流程（Release Workflow） ===&lt;br /&gt;
發布流程（Release Workflow） 會在原始套件（root package）完成升級之後，自動升級單一儲存庫工作區之間的相關套件。&lt;br /&gt;
&lt;br /&gt;
=== 工作區（Workspaces） ===&lt;br /&gt;
工作區（Workspaces）可以讓多個專案在同一個存儲庫中一起進行工作，並在修改原始程式碼時自動套用修改到其他相關專案，使其可以通過只有執行一次安裝命令來一次安裝多個套件。&lt;br /&gt;
&lt;br /&gt;
== 與NPM的比較 ==&lt;br /&gt;
&lt;br /&gt;
* Yarn 可以從本機暫存區安裝套件。&amp;lt;ref&amp;gt;{{Cite web|date=2021-09-21|title=Package Manager – NPM and Yarn Explained with Examples|url=https://www.sitepoint.com/yarn-vs-npm/|website=Sitepoint|access-date=2023-04-10|archive-date=2023-05-17|archive-url=https://web.archive.org/web/20230517163731/https://www.sitepoint.com/yarn-vs-npm/|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Yarn 強烈綁定套件的版本。&lt;br /&gt;
* Yarn 使用校驗（checksum）和來確保資料完整性，對比 NPM 使用 SHA-512 來檢查下載套件的資料完整性。&amp;lt;ref&amp;gt;{{Cite web|date=2021-08-10|title=How To Install and Use the Yarn Package Manager for Node.js|url=https://www.digitalocean.com/community/tutorials/how-to-install-and-use-the-yarn-package-manager-for-node-js|website=DigitalOcean|access-date=2023-04-10|archive-date=2023-03-26|archive-url=https://web.archive.org/web/20230326144337/https://www.digitalocean.com/community/tutorials/how-to-install-and-use-the-yarn-package-manager-for-node-js|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Yarn 以平行的方式安裝套件，對比 NPM 以一次性的方式安裝一個套件。&lt;br /&gt;
&lt;br /&gt;
== 語法 ==&lt;br /&gt;
安裝Yarn：&lt;br /&gt;
 npm install -g yarn&lt;br /&gt;
注意：npm安裝預設為&amp;quot;yarn classic&amp;quot;，即第一個版本；如需安裝最新版，則須再額外執行下列步驟：[https://yarnpkg.com/getting-started/install] {{Wayback|url=https://yarnpkg.com/getting-started/install |date=20240525011650 }}&lt;br /&gt;
 corepack enable&lt;br /&gt;
 yarn set version stable&lt;br /&gt;
利用Yarn安裝套件&amp;lt;ref&amp;gt;{{Cite web|date=2023-02-04|title=Yarn vs npm: Everything You Need to Know|url=https://codesweetly.com/package-manager-explained|website=CodeSweetly|access-date=2023-04-10|archive-date=2023-05-19|archive-url=https://web.archive.org/web/20230519103521/https://codesweetly.com/package-manager-explained|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
 yarn add [package-name]&lt;br /&gt;
或是將套件加入&amp;quot;devDependencies&amp;quot;&lt;br /&gt;
 yarn add -D [package-name]&lt;br /&gt;
注意：在第一個版本中是這樣安裝：&lt;br /&gt;
 yarn install [package-name] --save-dev&lt;br /&gt;
&lt;br /&gt;
== 參見 ==&lt;br /&gt;
&lt;br /&gt;
* [[Npm|NPM]]&lt;br /&gt;
* [[Node.js]]&lt;br /&gt;
&lt;br /&gt;
== 參考文獻 ==&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>imported&gt;Gdlittlefish</name></author>
	</entry>
</feed>