使用 wingetsource 此命令可以管理源。
source使用此命令,可以add、、edit、listupdate、removereset或 export WinGet 源。
WinGet source 提供用于发现和安装应用程序的数据。 仅使用安全受信任的源。
WinGet 指定以下三个默认源,可以使用它列出 winget source list。
- msstore - Microsoft Store 目录。
- winget - 应用程序的 WinGet 社区存储库。
- winget-font - 用于字体的 WinGet 社区存储库。
用法
winget source <subcommand> <options>
Sub-Commands
可使用以下参数。
| Sub-Command | 说明 |
|---|---|
add |
添加新的 source。 |
edit |
编辑现有 source。 |
list |
列出当前源。 |
update |
更新当前源。 |
remove |
删除当前源。 |
reset |
重置默认源 msstorewinget 和 winget-font。 |
export |
导出当前源。 |
选项
可以使用以下选项。
| 选项 | 说明 |
|---|---|
-?, --help |
显示有关所选命令的帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
添加
子 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-source-agreements |
用于接受 source 许可协议,并避免出现提示。 |
--explicit |
将 source 命令标记为显式,要求命令直接使用 --source。 |
-?, --help |
获取有关此命令的更多帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
例如,winget source add --name Contoso https://www.contoso.com/cache 在 URL https://www.contoso.com/cache 处添加 Contoso 存储库。
可选类型参数
add子命令支持可选类型参数,该参数告知客户端要连接到的存储库类型。 支持以下类型。
| 类型 | 说明 |
|---|---|
| Microsoft.PreIndexed.Package | 默认 source 类型。 |
| Microsoft.Rest | Microsoft REST API source。 |
编辑
edit子命令修改现有source配置。 主要用途是切换是source显式还是隐式。
source显式时,WinGet 命令必须直接使用 --source。 如果为 source 隐式,则它将自动包含在所有命令中。
用法:
winget source edit [-n] <name> [<options>]
参数
可使用以下参数。
| 参数 | 说明 |
|---|---|
-n, --name |
要编辑的名称 source 。 |
选项
可以使用以下选项。
| 选项 | 说明 |
|---|---|
--explicit |
将设置为 source 显式 (true) 或隐式 (false)。 显式时,命令必须直接以 using source为目标--source。 |
--header |
可选Windows -Package-Manager REST source HTTP 标头。 |
--accept-source-agreements |
用于接受 source 许可协议,并避免出现提示。 |
-?, --help |
获取有关此命令的更多帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
示例
默认情况下,-font 是显式的winget,这意味着命令必须直接使用 source。--source winget-font 若要将其重置为默认(隐式)状态,使其自动包含在所有 WinGet 命令中,请运行:
winget source edit winget-font --explicit false
若要将设置为显式:source
winget source edit winget-font --explicit true
列表
子 list 命令枚举当前启用的源,或提供有关特定 source源的详细信息。
注释
当设置为 source 显式时,它必须专门面向它。
默认情况下,winget-fontsource 设置为显式。 这意味着任何其他 WinGet 命令都必须直接引用 source using 或--source winget-font-s winget-font要包含。
用法:
winget source list [[-n] <name>] [<options>]
别名
以下别名可用于此子命令:
ls
参数
可使用以下参数。
| 参数 | 说明 |
|---|---|
-n, --name |
要标识 source 依据的名称。 |
选项
可以使用以下选项。
| 选项 | 说明 |
|---|---|
-?, --help |
获取有关此命令的更多帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
全部列出
子 list 命令本身 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 日期和时间。
更新
update子命令强制更新个人source或所有源。
用法:
winget source update [[-n] <name>] [<options>]
别名
以下别名可用于此子命令:
refresh
参数
可使用以下参数。
| 参数 | 说明 |
|---|---|
-n, --name |
要标识 source 依据的名称。 |
选项
可以使用以下选项。
| 选项 | 说明 |
|---|---|
-?, --help |
获取有关此命令的更多帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
全部更新
子 update 命令本身 winget source update会请求对所有存储库进行更新。
更新 source
带有 update 选项的 --name 子命令将更新定向到命名 source的 。 例如:winget source update --name Contoso 强制更新 Contoso 存储库。
删除
子 remove 命令删除一个 source. 此子命令需要用于--name标识 .source 由于命令更改了用户访问,因此使用 remove 需要管理员权限。
用法:
winget source remove [-n] <name> [<options>]
别名
以下别名可用于此子命令:
rm
参数
可使用以下参数。
| 参数 | 说明 |
|---|---|
-n, --name |
要标识 source 依据的名称。 |
选项
可以使用以下选项。
| 选项 | 说明 |
|---|---|
-?, --help |
获取有关此命令的更多帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
示例
winget source remove --name Contoso
此命令将移除 Contoso 存储库。
复位/重设/还原
子 reset 命令将客户端重置回其原始配置,并删除除默认值以外的所有源。 仅在极少数情况下才会使用此子命令。 由于命令更改了用户访问,因此使用 reset 需要管理员权限。
reset由于该命令删除了所有源,因此必须使用该选项强制执行该操作--force。
用法:
winget source reset [[-n] <name>] [<options>]
参数
可使用以下参数。
| 参数 | 说明 |
|---|---|
-n, --name |
要标识 source 依据的名称。 |
选项
可以使用以下选项。
| 选项 | 说明 |
|---|---|
--force |
强制重置源。 |
-?, --help |
获取有关此命令的更多帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
导出
子 export 命令将 JSON 输出的特定详细信息 source 导出。 这对于配置组策略进行 source 管理非常有用。
用法:
winget source export [[-n] <name>] [<options>]
参数
可使用以下参数。
| 参数 | 说明 |
|---|---|
-n, --name |
要标识 source 依据的名称。 |
选项
可以使用以下选项。
| 选项 | 说明 |
|---|---|
-?, --help |
获取有关此命令的更多帮助。 |
--wait |
提示用户在退出前按任意键。 |
--logs, --open-logs |
打开默认日志位置。 |
--verbose, --verbose-logs |
用于替代日志记录设置并创建详细日志。 |
--nowarn, --ignore-warnings |
禁止警告输出。 |
--disable-interactivity |
禁用交互式提示。 |
--proxy |
设置要用于此执行的代理。 |
--no-proxy |
禁用此执行使用代理。 |
示例
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-source-agreements 接受 source 协议并避免出现提示。
许多 WinGet 命令评估所有配置的源。 如果配置 source 的任何协议都需要协议,则 WinGet 会在使用这些源之前提示。 在使用之前必须接受源协议。
source如果更新协议条款,或者删除并读取了 asource(如本例winget source reset --force所示),则会再次显示协议。