Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
借助 Azure Artifacts 上游源,开发人员能够使用公共注册表中的包,例如 nuget.org 和 npmjs.com。 本文将指导你完成设置项目和使用命令行从 NuGet 库有效使用 NuGet 包的过程。 本文将指导如何进行以下操作:
- 为源启用上游源
- 将 NuGet 库添加为上游源
- 连接到源
- 从 nuget.org 安装包
先决条件
Azure Artifacts 源。
下载 NuGet。
下载并安装 Azure Artifacts 凭据提供程序。
在源上启用上游源
如果尚未创建源,请按照以下步骤创建新的源,并确保选中上游源复选框以启用它们。 如果已有源,请转到 下一步 ,将 NuGet 库添加为上游源。
登录到 Azure DevOps 组织,并导航到你的项目。
选择“项目”,然后选择“创建源”。
为您的源提供 名称,选择 可见性 选项来确定谁可以查看您的包。若要包括来自常见公共源(如 nuget.org 或 npmjs.com)的包,请勾选“包括公共源中的包”。关于 范围,请决定该源是否仅限于您的项目或整个组织。
完成操作后,选择“创建”。
登录到 Azure DevOps 服务器,然后转到项目。
选择“项目”,然后选择“创建源”。
为您的源提供 名称,选择 可见性 选项来确定谁可以查看您的包。若要包括来自常见公共源(如 nuget.org 或 npmjs.com)的包,请勾选“包括公共源中的包”。关于 范围,请决定该源是否仅限于您的项目或整个组织。
完成操作后,选择“创建”。
完成操作后,选择“创建”。
注意
默认情况下,新建的源的“生成服务”值设置为“源”和“上游读取者”(协作者)。
上游源添加 NuGet 库
如果在制作源时选中了上游源复选框,则 NuGet 库应会自动添加。 否则,请按照以下步骤手动添加它:
登录到 Azure DevOps 组织,并导航到你的项目。
选择“项目”,然后选择源。
选择齿轮图标按钮
以导航到 源设置。
选择上游源,然后选择“添加上游”以添加新的上游源。
选择 “公共源”,然后从下拉菜单中选择 “NuGet 库 ”。
完成后,选择“添加”,然后选择右上角的“保存一次”以保存更改。
登录到 Azure DevOps 服务器,然后导航到项目。
选择“项目”,然后选择源。
选择齿轮图标按钮
以导航到 源设置。
选择“ 上游源”,然后选择“ 添加上游”。
选择 “公共源”,然后从下拉菜单中选择 “NuGet 库 ”。
完成后,选择“ 保存 ”,然后在右上角再次选择“ 保存 ”以保存更改。
登录到 Azure DevOps 服务器,然后导航到项目。
选择“项目”,然后选择源。
选择齿轮图标按钮
以导航到 源设置。
选择 上游源,然后选择“ 添加上游源”。
选择 “公共源”,然后从下拉菜单中选择 “NuGet 库 ”。
完成后,选择“添加”。
连接到源
登录到 Azure DevOps 组织,并导航到你的项目。
选择“项目”,然后选择源。
选择“ 连接到源”,然后选择“ NuGet.exe”。
在 .csproj 或 .sln 文件所在的文件夹中添加 nuget.config 文件。 将提供的 XML 代码片段粘贴到文件中。 如果使用以下示例,请确保将占位符替换为方案的适当值。
组织范围的源:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
项目范围的源:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
登录到 Azure DevOps 服务器,然后导航到项目。
选择“项目”,然后选择源。
选择“ 连接到源”,然后从左侧导航窗格中选择 NuGet.exe 。
按照“项目设置”部分中的说明连接到源。
从 NuGet 库安装包
现在,我们的项目配置为使用源进行身份验证,现在可以继续从 NuGet 库上游安装包。 在此示例中,我们将安装 Serilog 诊断日志记录库:
导航到 NuGet 库。
https://www.nuget.org/
搜索 Serilog 包,然后选择它以导航到详细信息页。
选择程序包管理器选项卡,然后复制命令。 在我们的示例中,命令如下:
NuGet\Install-Package Serilog -Version 3.1.2-dev-02097
在 Visual Studio 中打开项目,然后选择“>>程序包管理器控制台”以打开控制台窗口。
将命令粘贴到程序包管理器控制台窗口中,然后按 Enter 安装包。
注意
若要从上游保存包,必须具有 源和上游读取者(协作者) 角色或更高版本。 有关更多详细信息,请参阅 “管理权限 ”。
查看保存的包
- 登录到 Azure DevOps 组织,并导航到你的项目。
- 登录到 Azure DevOps 服务器,然后导航到项目。
选择“ 项目”,然后从下拉菜单中选择源。
从下拉菜单中选择 NuGet 库源,筛选来自此上游的包。
在上一步中安装的 Serilog 包现已在我们的源中提供。 执行安装命令时,Azure Artifacts 会自动将副本保存到源。