与共享库项目(然后将其包含在每个解决方案中)相比,使用私有 NuGet 服务器有哪些优势?
我们有几个库在我们的代码库中共享,目前我已经在每个解决方案中使用项目的相对路径包含了这些库。
我在共享项目中看到的当前问题是,TFS 使用文件夹作为其分支策略,并且在每个解决方案中破坏了项目的相对路径链接。所以 NuGet 服务器可以解决这个问题。
与共享库项目(然后将其包含在每个解决方案中)相比,使用私有 NuGet 服务器有哪些优势?
我们有几个库在我们的代码库中共享,目前我已经在每个解决方案中使用项目的相对路径包含了这些库。
我在共享项目中看到的当前问题是,TFS 使用文件夹作为其分支策略,并且在每个解决方案中破坏了项目的相对路径链接。所以 NuGet 服务器可以解决这个问题。
我会说共享项目的第一大优势是版本控制和依赖管理。使用共享项目和代码文件,您始终拥有最新版本,这可能是可取的,也可能不是。另一个优势是,如果您有多个团队负责组织内的库部署,他们可以使用敏捷方法尽早部署并经常部署到私人订阅源,您作为消费者可以选择适合您的版本来参考。
当然,对于小型团队,您可能希望使用共享文件进行开发。在我的公司,我们能够以这种方式工作,直到我们发现我们在几个客户的项目中共享略有不同的代码,我们需要一种方法来托管和管理我们自己的私有库。当我们发现 NuGet 时,它并没有完全按照我们想要的方式解决这些问题,因此我们构建了 ProGet来托管我们自己的私人订阅源。
如果您正在考虑为您的组织采用 NuGet 方法,请查看我的一位同事撰写的这篇文章,了解采用的一些利弊。即使您不具备企业资格,但大部分要点仍然适用。
私有 nuget 包相对于共享库项目的优势与公共 nuget 相对于通过 Internet 下载的库的优势相同: