使用 Azure Artifacts 发布和下载 NuGet 包

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020

Azure Artifacts 使开发人员能够从源或公共注册表发布和下载 NuGet 包。 源可以是允许与特定用户共享包的专用源,也可以是 Internet 上的任何人都可访问包的公共源。

本文介绍如何创建源、配置项目以及发布和下载 NuGet 包。

先决条件

产品 要求
Azure DevOps - 一个 Azure DevOps 组织
- Azure DevOps 项目
- 下载并安装 Azure Artifacts 凭据提供程序
- 安装 最新的 NuGet 版本

创建信息流

  1. 登录到 Azure DevOps 组织并导航到项目。

  2. 选择“项目”,然后选择“创建源”

  3. 为源提供一个名称,选择定义谁可以查看包的可见性选项;如果想包含来自 nuget.orgnpmjs.com 等源的包,请选中包含来自公共源的包,对于范围,决定源的范围是项目还是整个组织。

  4. 完成操作后,选择“创建”

    显示用于在 Azure DevOps Services 中创建新源的选择的屏幕截图。

  1. 登录到 Azure DevOps 服务器,然后转到项目。

  2. 选择“项目”,然后选择“创建源”

  3. 为源提供一个名称,选择定义谁可以查看包的可见性选项;如果想包含来自 nuget.orgnpmjs.com 等源的包,请选中包含来自公共源的包,对于范围,决定源的范围是项目还是整个组织。

  1. 完成操作后,选择“创建”

    显示用于在 Azure DevOps 2022 中创建新订阅源的选项的屏幕截图。

  1. 完成操作后,选择“创建”

    显示用于在 Azure DevOps 2020 中创建新源的选择的屏幕截图。

注意

默认情况下,当创建新提要时,项目中的生成服务(例如:projectName Build Service (orgName))将被分配提要和上游阅读者(协作者)角色。

连接到源

  1. 登录到 Azure DevOps 组织,然后转到项目。

  2. 选择“ 项目”,然后从下拉菜单中选择源。

  3. 选择连接到源,然后从左侧导航窗格中选择 NuGet.exe。 如果这是你第一次将 Azure Artifacts 与 Nuget.exe一起使用,请确保已安装必备组件。

  4. 按照“项目设置”部分下提供的说明,设置 nuget.config 文件,并连接到 Azure Artifacts 源。

    显示如何在 Azure DevOps Services 中设置项目并连接到源的屏幕截图。

  1. 登录到 Azure DevOps 服务器,然后转到项目。

  2. 选择“ 项目”,然后从下拉菜单中选择源。

  3. 选择连接到源,然后从左侧导航窗格中选择 NuGet.exe

  4. 按照“项目设置”部分下提供的说明,设置 nuget.config 文件,并连接到 Azure Artifacts 源。

    显示如何在 Azure DevOps Server 2020 和 Azure DevOps Server 2022 中设置项目并连接到源的屏幕截图。

将包发布到你的源

若要将包发布到源,请运行以下命令。 参数 ApiKey 是必需的,但可以使用任意字符串作为其值。

nuget.exe push -Source <SOURCE_NAME> -ApiKey key <PACKAGE_PATH>

例子

  • 项目作用域的源

    nuget.exe push -Source https://pkgs.dev.azure.com/myOrganization/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ release/myDemoPackage.1.0.0.nupkg
    
  • 组织作用域的源

    nuget.exe push -Source https://pkgs.dev.azure.com/myOrganization/_packaging/myFeed/nuget/v3/index.json -ApiKey AZ release/myDemoPackage.1.0.0.nupkg
    

注意

ApiKey 是必需的,但在发布到 Azure Artifacts 源时可以使用任意值。

从源下载包

若要从源还原包,请在项目目录中运行以下命令:

nuget.exe restore

注意

不支持使用 NuGet 包资源管理器在上游源中搜索包。