Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何更新纱线中的全球包?_Javascript_Node.js_Yarnpkg - Fatal编程技术网

Javascript 如何更新纱线中的全球包?

Javascript 如何更新纱线中的全球包?,javascript,node.js,yarnpkg,Javascript,Node.js,Yarnpkg,我尝试了一些可能的CLI命令,但似乎没有一个命令能够真正更新使用warn global add安装的软件包 纱线全局升级和纱线全局升级都不能正常工作。是否有升级全局程序包的方法?在上已经出现了一个问题,使用纱线全局添加@latest将升级特定的程序包(如果您正尝试这样做) 更新 最近添加的纱线全球升级升级了所有软件包。这在原始答复时并不存在。TL;博士: 正如你所说,你只是: yarn global upgrade 在纱线中版本1.2.1及以后 对于早期版本: (cd ~/.config/ya

我尝试了一些可能的CLI命令,但似乎没有一个命令能够真正更新使用
warn global add安装的软件包


纱线全局升级
纱线全局升级
都不能正常工作。是否有升级全局程序包的方法?

上已经出现了一个问题,使用
纱线全局添加@latest
将升级特定的程序包(如果您正尝试这样做)

更新

最近添加的
纱线全球升级
升级了所有软件包。这在原始答复时并不存在。

TL;博士: 正如你所说,你只是:

yarn global upgrade
纱线中
版本1.2.1及以后

对于早期版本:

(cd ~/.config/yarn/global && yarn upgrade)
检修 遗憾的是,目前没有
纱线全局检查

您可以运行
warn global add--force
重新安装所有软件包

要查看
全局包,可以将
~/.config/warn/global/
视为本地包,因为:

  • ~/.config/warn/global/package.json
    对所有全局包都有依赖关系
  • ~/.config/warn/global/node_模块
    包含所有全局包
检查所有全局软件包,并仅在发现错误时重新安装:

$ (cd ~/.config/yarn/global && yarn check || yarn install --force)

我使用的是
warn全局升级

请注意,根据,
warn全局升级foo
并不总是将软件包升级到最新版本,即使带有
--latest
标志

例如,如果您安装了
foo
v12.0.1,并且v13.0.0可用,则不会升级到v13.0.0,因为默认情况下,
warn全局升级
当前在semver中不会超过主要颠簸(有关更多信息,请参阅上述问题中的讨论)

运行
warn global add foo
会将当前安装的版本升级到最新版本,即使当前安装的版本与最新版本之间存在严重版本冲突


我相信,
纱线全球升级互动
也会允许用户升级过去的主要版本颠簸。

我在尝试升级时出错。这是在安装后开始发生的

我试图通过以下方式升级我的全球安装的纱线包:

yarn global upgrade
显然,
纱线全球
一直使用
纱线dlx
,但是
纱线dlx
作为
纱线全球
的东西。多么令人困惑:/

对我来说,诀窍是通过以下方式临时降级安装:

yarn set version classic
现在我可以运行升级命令了

之后,我通过以下方式再次更新:

yarn set version berry

您到底想安装/更新什么?要升级单个软件包,
warn global add
warn global upgrade
现在都可以使用(但问题是如何升级所有全局软件包,而不仅仅是其中一个)。是的,这就是为什么我明确说明了它当前支持的内容。是否有类似于“ncu-g”的东西来检查更新?由于“纱线全球升级-最新”抱怨锁文件过时,我不得不进入~/.config/warn/global目录并执行“纱线安装”。只有在这之后,我才能再次运行纱线全局升级命令。