什么是源视图?

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

源视图允许开发人员向使用者共享特定的软件包版本子集。 如果要提供对经过测试和验证的包的访问权限,同时保留仍在开发或不符合质量标准的包,这非常有用。

默认视图

每个制品源默认包括三个视图: @local@prerelease@release。 后两个是建议的视图,你可以根据需要重命名或删除。

@local 是默认视图,通常用于上游源。 可以在 Feed 设置>视图中更改默认视图,但请注意,这不会启用直接发布到该视图的功能。 只有在基本源中发布的包才能在 @Local 视图中使用。

视图 @local 包含:

  • 所有包直接发布到信息流。
  • 所有从 上游源保存的包。

供稿视图是只读的,这意味着连接到视图的用户只能使用发布到该视图的包和/或以前从上游源保存的包。 请参阅 包图 ,了解如何构造包图。

注意

Azure Artifacts 仅支持从默认视图发布和还原包: @Local

源视图和上游源

源视图和上游源旨在协同工作,以提供用于共享和使用包的企业级解决方案。 若要允许其他 Azure Artifacts 源将你的源用作上游源,必须根据情境将你的源的可见性设置为 组织成员,或 你 Microsoft Entra ID 的成员

如果选择Microsoft Entra ID,则组织中的所有用户都可以访问您的订阅源,组织中与同一个Microsoft Entra 租户关联的其他组织中的所有订阅源也可以上传到您的订阅源。

注意

公共源中的所有源视图都可供 Internet 上的所有人访问。

包含源视图的发行包

发布包时,必须传达三个关键方面:

创建发布包时,必须传达三条信息:

  • 更改的性质:正在引入哪种类型的更改。

  • 更改的风险:此更改可能导致的破坏性或破坏程度。

  • 更改质量:包是否符合验证标准。

一张展示语义版本细分的屏幕截图。

更改的性质和风险

性质和风险都与变更的意图有关,这在开发开始时是已知的:

  • 自然:是添加新功能、更新现有功能还是修复 bug?

  • 风险:此更改是否影响关键组件(如 API)或引入重大更改?

大多数团队使用 语义版本控制 (SemVer)来传达此信息。 SemVer 被广泛采用,用于有效表明变化的性质和风险。

1.2.3
│ │ └─ Patch (bug fixes)
│ └── Minor (new features)
└──── Major (breaking changes)

更改的质量

在验证过程完成之前,更改的质量通常未知。 在验证后确定这一点,一旦包被生成并测试。 因此,传达版本号数字段变化的质量(例如 1.2.3)是不可行的。

虽然存在预验证的解决方法(例如,在打包包并将包发布到“调试”或“CI”环境之前直接使用生成的 DLL,然后验证这些包并将其重新发布到“发布”环境),但它们不能保证最终包符合质量标准。

一个表示用于发布软件包的工作流程的图表。

相反,可以使用信息流视图来传达质量。 使用@Release视图时,只能共享已通过验证并满足质量标准的包。 这允许使用者仅查看已测试、验证并已准备好使用的包版本的子集。 此方法可确保使用者访问稳定的生产就绪包。 有关更多信息,请参阅推广包和管理订阅视图