4

与共享库项目(然后将其包含在每个解决方案中)相比,使用私有 NuGet 服务器有哪些优势?

我们有几个库在我们的代码库中共享,目前我已经在每个解决方案中使用项目的相对路径包含了这些库。

我在共享项目中看到的当前问题是,TFS 使用文件夹作为其分支策略,并且在每个解决方案中破坏了项目的相对路径链接。所以 NuGet 服务器可以解决这个问题。

4

2 回答 2

5

我会说共享项目的第一大优势是版本控制和依赖管理。使用共享项目和代码文件,您始终拥有最新版本,这可能是可取的,也可能不是。另一个优势是,如果您有多个团队负责组织内的库部署,他们可以使用敏捷方法尽早部署并经常部署到私人订阅源,您作为消费者可以选择适合您的版本来参考。

当然,对于小型团队,您可能希望使用共享文件进行开发。在我的公司,我们能够以这种方式工作,直到我们发现我们在几个客户的项目中共享略有不同的代码,我们需要一种方法来托管和管理我们自己的私有库。当我们发现 NuGet 时,它并没有完全按照我们想要的方式解决这些问题,因此我们构建了 ProGet来托管我们自己的私人订阅源。

如果您正在考虑为您的组织采用 NuGet 方法,请查看我的一位同事撰写的这篇文章,了解采用的一些利弊。即使您不具备企业资格,但大部分要点仍然适用。

于 2013-05-22T15:29:13.833 回答
2

私有 nuget 包相对于共享库项目的优势与公共 nuget 相对于通过 Internet 下载的库的优势相同:

  • 可发现性 - 所有包裹都集中在一个地方,易于查找
  • 易于使用 - 下载库,添加对 dll 的引用,只需单击即可添加必要的配置
  • 开箱即用地与 Visual Studio 集成
  • 依赖和版本管理 - 包可以依赖于其他包
  • Nuget 包不仅仅是一个库。它包含内容文件、源文件、配置等。
于 2014-12-22T10:04:55.760 回答