ChatGPT解决这个技术问题 Extra ChatGPT

Yarn:如何使用终端升级纱线版本?

yarn 应该如何升级到最新版本?


J
Jimit Patel

对于 macOS 用户,如果您通过 brew 安装了 yarn,则可以使用以下命令对其进行升级:

brew upgrade yarn

在 Linux 上,只需在终端运行以下命令:

$ curl --compressed -o- -L https://yarnpkg.com/install.sh | bash

在 Windows 上,使用 Chocolatey 升级

choco upgrade yarn

学分:在以下答案的帮助下添加了答案

https://stackoverflow.com/a/54147594/842607

https://stackoverflow.com/a/53710422/842607


标记为 Ubuntu,而不是 MacO。
将用户引导至此问题时,Google 不会检查标签。
您可以通过以下方式更快地做到这一点:(npm uninstall -g yarn && brew install yarn) || brew upgrade yarn
请注意,通过 brew 安装 yarn 也会安装 node。例如,如果您使用 nvmn,这可能是不受欢迎的。
@LucianoBargmann 我在我的 Linux 安装上安装了 brew,所以对于以这种方式升级的少数人来说,这不是一个糟糕的答案。
P
Pang
npm install --global yarn
npm upgrade --global yarn 

这应该有效。


>注意:一般不推荐通过 npm 安装 Yarn。使用基于节点的包管理器安装 Yarn 时,包没有签名,唯一执行的完整性检查是基本的 SHA1 哈希,这在安装系统范围的应用程序时存在安全风险。 yarnpkg.com/lang/en/docs/install/#alternatives-stable
我很确定您不能再通过 npm 安装/升级 yarn,而至少需要在 OSX 上抛出 brew
由于这个问题专门针对 Ubuntu 16.04,因此关于 OSX 和 brew 的评论并不真正相关。我刚刚在 Ubuntu 16.04 上通过 npm upgrade --global yarn 升级了 yarn,我之前通过 npm 安装了 yarn。非常肯定,它仍然是可能的,即使这不是推荐的方式。我通过 npm 安装 yarn 的最初原因是我使用 nvm 来保留多个版本的 node。通过 apt 安装 yarn 会在全局范围内安装特定版本的节点。但我读到这可以通过参数 --no-install-recommends 避免。
@mnishiguchi 您链接的页面不包含引用的文本。实际上,它包含相反的声明:“建议通过 npm 包管理器安装 Yarn”
2021年也许现在情况有所不同¯_(ツ)_/¯
A
Agu V

不记得我是如何安装纱线的,对我有用的命令是:

yarn policies set-version

此命令将当前的纱线版本更新为最新的稳定版本。

从文档中:

请注意,此命令也是升级 Yarn 的首选方法 - 无论您最初如何安装它,它都可以工作,有时可能很难弄清楚。

Reference


还值得注意的是,此命令创建 .yarn/.yarnrc
它没有全局更新 Yarn,只在当前项目中更新。
这个命令对我不起作用,它返回错误:`错误在“/home/..”中找不到 package.json 文件`
我猜它不起作用,因为我用 apt-get 安装了我的 yarn。我认为有可能知道您是如何安装软件包的。对我来说,我执行 npm list -g >filename.txt,然后我在文件中搜索所需的任何包。对于 apt-get,我执行 apt list --installed,然后检查输出以获取所需的包。
J
Janderson Silva

在 Linux 上,只需在终端运行以下命令:

$ curl --compressed -o- -L https://yarnpkg.com/install.sh | bash

完成此操作后,关闭当前终端并再次打开它。然后,运行以下命令检查纱线当前版本:

$ yarn --version

也适用于 OSX
在 git bash 上工作,但在命令提示符下运行 yarn --version 时显示相同的旧版本。
@NirajNiroula 您需要重新打开终端才能看到任何更改。
我试过了,不管我是否打开了一个新的终端,它都不起作用。对我来说,npm install --global yarn 在 Ubuntu 中工作
A
April M. Clements

yarn policies set-version

将下载最新的稳定版本

参考的纱线文档 https://yarnpkg.com/lang/en/docs/cli/policies/#toc-policies-set-version


请注意,您也可以使用此命令指定版本。例如yarn policies set-version 1.21.0
这个命令对我不起作用,它返回错误 error Couldn't find a package.json file in "/home/.."
这通常用于为共享团队项目设置策略,而不是用于更新/升级全局安装
P
Pang

对于 Windows 用户

我通常用 Chocolatey 升级 Yarn。

choco upgrade yarn

Y
Yuriy Rypka

npm install -g yarn - 解决了运行 npm update --global yarn 时没有发生的问题。

更新纱线的替代方法:curl --compressed -o- -L https://yarnpkg.com/install.sh | bash

使用自制软件的 Mac 用户可以运行 brew upgrade yarn

更多详情 herehere


如果 npm update --global yarn 不起作用但 npm install -g yarn 起作用,则可能是 npm 一开始就没有安装它。
谢谢,它对我有用。从 yarn 1.19.1 升级到 yarn 1.22.4
在使用 npm 安装之前,我必须先从 Program Files (x86) 中删除 Yarn。
l
lfender6445

我有一个过时的符号链接,阻止我访问正确的 bin。我最近还进行了节点升级,这意味着我的许多较新的 bin 都可以在不同的文件夹中使用,我认为这是一个较低的优先级

这对我有用:

yarn -v 
> 1.15.2

which yarn
> /Users/lfender/.yarn/bin/yarn 

rm -rf /Users/lfender/.yarn/bin/yarn
npm uninstall --global yarn; npm install --global yarn

> + yarn@1.16.0
> added 1 package in 0.179s

which yarn
> /Users/lfender/.nvm/versions/node/v12.2.0/bin/yarn

yarn -v
> 1.16.0

如果您不使用 NVM,则您的 bin 安装位置可能对您的系统是唯一的

从那里开始,我已切换到执行此处所述的 yarn policies set-version https://stackoverflow.com/a/55278430/1426788 以在 repo 级别定义我的 yarn 版本


A
Ahmed

适用于所有操作系统

yarn set version latest
yarn set version from sources

在没有第二行的情况下为我工作,但由于某种原因它在文档中。

Reference


当心。它有效,但对我来说破坏了 global add
P
Piyush Khera

根据https://yarnpkg.com/getting-started/install#updating-to-the-latest-versions

yarn set version <version>

例如将 yarn v1.22.4 升级到 v1.22.10:

yarn set version 1.22.10

或最新:yarn set version stable
A
Afaq Ahmed Khan

添加纱线包目录:

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

安装纱线:

sudo apt-get update && sudo apt-get install yarn

请注意,如果软件包已经安装,最后一个命令会将纱线升级到最新版本。

有关详细信息,您可以查看文档:yarn installation


该解决方案在带有 zsh 的 Windows 10 ubuntu WSL 终端上为我工作。
如果您使用 apt-get 安装了 yarn,则此解决方案有效。它在 Ubuntu 16.04 对我有用
M
Merabi Pkhaladze

我通过从终端运行以下命令在我的 Ubuntu 上更新了纱线

curl --compressed -o- -L https://yarnpkg.com/install.sh |重击

来源:https://yarnpkg.com/lang/en/docs/cli/self-update


谢谢梅拉比。源码真的很有用。
N
NearHuscarl

如果您已经拥有 yarn 1.x 并且想要升级到 yarn 2。您需要做一些不同的事情:

yarn set version berry

其中 berry 是纱线版本 2 的代号。有关详细信息,请参阅此迁移指南 here


C
Chandresh Mishra

我在需要最新纱线的 Jenkins 管道中尝试了上述所有解决方案。最后,这对我有用。

在 git repo 中运行 yarn policies set-version 这将生成 .yarn/releases/yarn-XXXjs 文件和 .yarnrc 文件。在 Git 存储库中推送这两个文件。现在构建,所有的 yarn 命令都将使用 yarn-XXX 版本。

注意:当您没有对 npm install -g yarn 的 root 访问权限时,这很有帮助。


M
Mahdi Zarei
npm i -g yarn

这应该更新您的纱线版本。使用 yarn -vyarn --version 检查版本。


yarn -v 将在新的终端选项卡上生效
S
Sachin

纱线策略设置版本

在 powershell 中使用上述命令将您当前的纱线版本升级到最新版本。它将下载最新的纱线版本


a
alfred carro

纱线策略设置版本

这将我的纱线版本从 1.22.5 升级到 1.22.10


R
Reettik Goswami

如果你想将你的 yarn 版本从 1.22.5 升级到 1.22.10

纱线策略设置版本


E
Ethan Cohen

这对我来说可以将纱线版本 0.32 git 更改为 1.22.5

https://www.codegrepper.com/code-examples/shell/yarn+0.32+git+ubuntu


您的答案可以通过额外的支持信息得到改进。请edit添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。您可以找到有关如何写出好答案的更多信息in the help center
虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
S
Stephen

由于您已经安装了纱线并且只想升级/更新。你可以简单地使用

yarn self-update

在此处查找参考 https://yarnpkg.com/en/docs/cli/self-update


这不是解决方案。如果您检查了该页面,它会显示“注意:自我更新不可用。请参阅在项目中强制执行版本的政策”
为什么他们甚至会有页面?这令人困惑。
为什么这甚至是一个页面。它也是一个谷歌排名页面。呃..