在azure devops中共享同一组织中不同项目中的工件的最佳方式



我有一个组织在azure开发有多个项目。在某些情况下,我们希望将工件从一个项目范围内的提要共享到另一个项目。有两种方法可以共享

  1. 将它们作为上游源添加到消费项目的项目范围feed
  2. 在消费应用程序的配置文件中引用多个项目范围的feed。

哪个是最好的解决方案,为什么?

根据关于使用Azure构件的最佳实践的文档:如果您想使用来自多个提要的包,请使用上游源将来自多个提要的包合并到一个提要中。

上游资源的好处:

上游源使您能够在单个提要中管理产品的所有依赖项。我们建议将给定产品的所有包发布到该产品的提要,并通过上游源管理来自同一提要中的远程提要的依赖关系。这个设置有几个好处:

  • 简单:你的NuGet。Config、.npmrc或settings.xml中包含只有一个feed(你的feed)。
  • 确定性:您的提要按顺序解析包请求,因此在相同的提交或更改集中重新构建相同的代码库使用
  • 来源:你的feed知道它保存的包的来源上游源,这样您就可以验证您使用的是原始的包,而不是自定义的,或恶意复制发布到您的feed。
  • 放心:通过上游源使用的包保证可以在第一次使用时保存在feed中。如果上游源是禁用/删除或远程提要关闭或删除包你依赖,你可以继续开发和构建。

最新更新