WinGet source 命令

使用 WinGetsource 命令可以管理源。 source使用此命令,可以添加编辑列出更新删除重置导出 WinGet 源。

WinGet source 提供用于发现和安装应用程序的数据。 仅使用安全受信任的源。

WinGet 指定以下三个默认源,可以使用它列出 winget source list

  • msstore - Microsoft Store 目录。
  • winget - 应用程序的 WinGet 社区存储库。
  • winget-font - 用于字体的 WinGet 社区存储库。

用法

winget source <subcommand> <options>

wingetsource 帮助

Sub-Commands

可使用以下参数。

Sub-Command 说明
添加 添加新的 source。
edit 编辑现有 source。
列表 列出当前源。
更新 更新当前源。
删除 删除当前源。
重置 重置默认源 msstorewingetwinget-font
导出 导出当前源。

选项

可以使用以下选项。

选项 说明
-?、--help 显示有关所选命令的帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

添加

add 子命令添加新source的 。 此子命令需要 --name 和 --arg 选项。 由于该命令会更改用户访问权限,因此使用 add 需要管理员权限。

用法:

winget source add [-n] <name> [-a] <arg> [[-t] <type>] [<options>]

参数

可使用以下参数。

参数 说明
-n、--name 要标识 source 依据的名称。
-a、--arg 的 URL 或 UNC source。
-t、--type source 的类型。

选项

可以使用以下选项。

选项 说明
--trust-level (无或受信任)的信任 source 级别。
--header 可选Windows -Package-Manager REST source HTTP 标头。
--accept--sourceagreements 用于接受 source 许可协议,并避免出现提示。
--明确 将 source 命令标记为显式,要求命令直接使用 --source
-?、--help 获取有关此命令的更多帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

例如,winget source add --name Contoso https://www.contoso.com/cache 在 URL https://www.contoso.com/cache 处添加 Contoso 存储库。

可选类型参数

add 子命令支持可选的 type 参数,该参数用于告知客户端将要连接到的存储库类型。 支持以下类型。

类型 说明
Microsoft.PreIndexed.Package 默认 source 类型。
Microsoft.Rest Microsoft REST API source。

编辑

编辑子命令修改现有source配置。 主要用途是切换是source显式还是隐式。 source显式时,WinGet 命令必须直接使用 --source。 如果为 source 隐式,则它将自动包含在所有命令中。

用法:

winget source edit [-n] <name> [<options>]

参数

可使用以下参数。

参数 说明
-n、--name 要编辑的名称 source 。

选项

可以使用以下选项。

选项 说明
--明确 将设置为 source 显式 (true) 或隐式 (false)。 显式时,命令必须直接以 using --source为目标source。
--header 可选Windows -Package-Manager REST source HTTP 标头。
--accept--sourceagreements 用于接受 source 许可协议,并避免出现提示。
-?、--help 获取有关此命令的更多帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

示例

默认情况下,-font 是显式的winget,这意味着命令必须直接使用 --source winget-font。source 若要将其重置为默认(隐式)状态,使其自动包含在所有 WinGet 命令中,请运行:

winget source edit winget-font --explicit false

若要将设置为显式:source

winget source edit winget-font --explicit true

列表

列表子命令枚举当前启用的源,或提供有关特定source源的详细信息。

注释

当设置为 source 显式时,它必须专门面向它。 默认情况下,winget-fontsource 设置为显式。 这意味着任何其他 WinGet 命令都必须直接引用 source 要包含的 using “--sourcewingetfont” 或 “-s winget-font”。

用法:

winget source list [[-n] <name>] [<options>]

wingetsource 列表

别名

以下别名可用于此子命令:

  • ls

参数

可使用以下参数。

参数 说明
-n、--name 要标识 source 依据的名称。

选项

可以使用以下选项。

选项 说明
-?、--help 获取有关此命令的更多帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

全部列出

列表子命令本身winget source list提供配置源的完整列表:

Name        Argument                                      Explicit
------------------------------------------------------------------
msstore     https://storeedgefd.dsx.mp.microsoft.com/v9.0 false
winget      https://cdn.winget.microsoft.com/cache        false
winget-font https://cdn.winget.microsoft.com/fonts        true

列表 source 详细信息

若要获取有关 a source的完整详细信息,请传入名称 source。 例如:

winget source list --name winget

返回以下输出:

Field       Value
--------------------------------------------------
Name        winget
Type        Microsoft.PreIndexed.Package
Argument    https://cdn.winget.microsoft.com/cache
Data        Microsoft.Winget.Source_8wekyb3d8bbwe
Identifier  Microsoft.Winget.Source_8wekyb3d8bbwe
Trust Level Trusted|StoreOrigin
Explicit    false
Updated     2025-12-11 08:30:25.000
  • Name 是 source 的名称。
  • Type 是 . 的类型 source。
  • Arg 是所使用的 source URL 或路径。
  • Data 是可选的包名称(如果适用)。
  • Updated 是上次更新的 source 日期和时间。

更新

更新子命令强制更新单个source源或所有源。

用法:

winget source update [[-n] <name>] [<options>]

别名

以下别名可用于此子命令:

  • refresh

参数

可使用以下参数。

参数 说明
-n、--name 要标识 source 依据的名称。

选项

可以使用以下选项。

选项 说明
-?、--help 获取有关此命令的更多帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

全部更新

update 子命令本身 请求对所有存储库进行更新。

更新 source

带有 --name 选项的更新子命令将更新定向到命名source的 。 例如:winget source update --name Contoso 强制更新 Contoso 存储库。

删除

remove 子命令删除一个 source。 此子命令需要 --name 选项来标识 source。 由于该命令会更改用户访问权限,因此使用 remove 需要管理员权限。

用法:

winget source remove [-n] <name> [<options>]

别名

以下别名可用于此子命令:

  • rm

参数

可使用以下参数。

参数 说明
-n、--name 要标识 source 依据的名称。

选项

可以使用以下选项。

选项 说明
-?、--help 获取有关此命令的更多帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

示例

winget source remove --name Contoso

此命令将移除 Contoso 存储库。

复位/重设/还原

reset 子命令用于将客户端重置为其原始配置,并删除除默认源之外的所有源。 仅在极少数情况下才会使用此子命令。 由于该命令会更改用户访问权限,因此使用 reset 需要管理员权限。

由于 reset 命令会删除所有源,因此必须使用 --force 选项强制执行该操作。

用法:

winget source reset [[-n] <name>] [<options>]

参数

可使用以下参数。

参数 说明
-n、--name 要标识 source 依据的名称。

选项

可以使用以下选项。

选项 说明
--力 强制重置源。
-?、--help 获取有关此命令的更多帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

导出

导出子命令将 JSON 输出的特定详细信息source导出。 这对于配置组策略进行 source 管理非常有用。

用法:

winget source export [[-n] <name>] [<options>]

参数

可使用以下参数。

参数 说明
-n、--name 要标识 source 依据的名称。

选项

可以使用以下选项。

选项 说明
-?、--help 获取有关此命令的更多帮助。
--等 提示用户在退出前按任意键。
--logs,--open-logs 打开默认日志位置。
--verbose、--verbose-logs 用于替代日志记录设置并创建详细日志。
--nowarn,--ignore-warnings 禁止警告输出。
--禁用互动性 禁用交互式提示。
--代理 设置要用于此执行的代理。
--无代理 禁用此执行使用代理。

示例

winget source export winget

返回以下输出:

{"Arg":"https://cdn.winget.microsoft.com/cache","Data":"Microsoft.Winget.Source_8wekyb3d8bbwe","Explicit":false,"Identifier":"Microsoft.Winget.Source_8wekyb3d8bbwe","Name":"winget","TrustLevel":["Trusted","StoreOrigin"],"Type":"Microsoft.PreIndexed.Package"}

源协议

个人 source 可以请求用户在添加或删除 source之前同意提供的协议。 如果用户不接受协议,WinGet 将无法访问该协议 source。

可以使用 --accept--sourceagreements 选项接受 source 协议并避免出现提示。

许多 WinGet 命令评估所有配置的源。 如果配置 source 的任何协议都需要协议,则 WinGet 会在使用这些源之前提示。 在使用之前必须接受源协议。 source如果更新协议条款,或者删除并读取了 asource(如本例winget source reset --force所示),则会再次显示协议。

wingetsource 协议