deno.com
本页内容

deno update

命令行用法

deno update [OPTIONS] [filters]...

更新过时的依赖项。

将依赖项更新到最新的 semver 兼容版本

deno update

将依赖项更新到最新版本,忽略 semver 要求

deno update --latest

此命令是 deno outdated --update 的别名

过滤器可用于选择要操作的包。过滤器可以包含通配符 (*) 以匹配多个包。

deno update --latest "@std/*"
deno update --latest "react*"

请注意,过滤器作用于在 deno.json / package.json 中配置的别名,而不是实际的包名:给定 deno.json 或 package.json 中的 "foobar": "npm:react@17.0.0",过滤器 "foobar" 会将 npm:react 更新到最新版本。

deno update --latest foobar

过滤器可以组合使用,也可以使用负向过滤器来排除结果

deno update --latest "@std/*" "!@std/fmt*"

可以指定要更新到的特定版本要求

deno update @std/fmt@^1.0.2

选项 跳转到标题

--compatible 跳转到标题

只考虑满足 semver 要求的版本。

--interactive 跳转到标题

短标志:-i

交互式选择要更新的依赖项。

--latest 跳转到标题

考虑最新版本,无论 semver 限制如何。

--recursive 跳转到标题

短标记:-r

包含所有工作区成员。

依赖项管理选项 跳转到标题

--frozen 跳转到标题

如果锁定文件过期,则报错。

--lock 跳转到标题

检查指定的锁定文件。(如果未提供值,则默认为 "./deno.lock")。

--no-lock 跳转到标题

禁用锁定文件的自动发现。

更新依赖 跳转到标题

默认情况下,update 子命令只会将依赖项更新到 semver 兼容的版本(即,它不会更新到破坏性版本)。

$ deno update
Updated 1 dependency:
 - jsr:@std/fmt 1.0.0 -> 1.0.3

要更新到最新版本(无论是否 semver 兼容),请传递 --latest 标志。

$ deno update --latest
Updated 3 dependencies:
 - jsr:@std/async 1.0.1 -> 1.0.8
 - jsr:@std/fmt   1.0.0 -> 1.0.3
 - npm:chalk      4.1.2 -> 5.3.0

选择包 跳转到标题

update 子命令还支持选择要操作的包。

$ deno update --latest chalk
Updated 1 dependency:
 - npm:chalk 4.1.2 -> 5.3.0

可以传递多个选择器,也支持通配符 (*) 或排除 (!)。

例如,要更新所有带有 @std 作用域的包,除了 @std/fmt

$ deno update --latest "@std/*" "!@std/fmt"
Updated 1 dependency:
 - jsr:@std/async 1.0.1 -> 1.0.8

请注意,如果使用通配符,可能需要用引号将参数括起来,以防止 shell 尝试扩展它们。

更新到特定版本 跳转到标题

除了选择要更新的包外,--update 标志还支持选择新 *版本*,通过在 @ 后指定版本。

❯ deno update chalk@5.2 @std/async@1.0.6
Updated 2 dependencies:
 - jsr:@std/async 1.0.1 -> 1.0.6
 - npm:chalk      4.1.2 -> 5.2.0

工作区 跳转到标题

在工作区设置中,默认情况下 update 将只操作 *当前* 工作区成员。

例如,给定一个工作区

{
  "workspace": ["./member-a", "./member-b"]
}

运行

deno update

./member-a 目录下运行只会更新 ./member-a/deno.json./member-a/package.json 中列出的依赖项。

要包含所有工作区成员,请传递 --recursive 标志(也接受 -r 简写)

deno update --recursive
deno update --latest -r

您找到所需内容了吗?

隐私政策