neget或神器与nuget?

时间:2013-03-05 11:17:58

标签: jenkins nuget nexus nuget-package artifactory

我正在尝试向我的组织介绍体面的参考管理。之前使用过Nexus和Maven,我知道它远远优于在本地构建所有的方法。由于这是一个.Net商店,我想使用NuGet而不是Maven。我知道二进制存储库将是最重要的一点,但没有在二进制存储库中托管NuGet存储库的经验。

在这种情况下,有没有理由支持Nexus或Artifactory?我们正在使用Jenkins和svn作为我们的CI,如果这有任何区别的话。

2 个答案:

答案 0 :(得分:23)

这是我们上次比较Artifactory与Nexus的NuGet支持时所发现的(免责声明 - 我与JFrog合作):

  1. 在Artifactory中,NuGet支持自然地集成到产品中,这使管理变得更加容易 - 只需将本地存储库标记为启用NuGet或设置远程存储库的远程URL。可以在单个虚拟NuGet仓库下轻松聚合多个NuGet存储库 - 与Artifactory中的任何其他仓库使用的方法相同;在Nexus中,您需要定义新类型的存储库,设置新的专用安全领域,如果您需要现有存储库来回答NuGet请求,则必须为其添加特殊的外观。这是Nexus中的一种通用方法,其中每种新类型的存储库(例如P2)都需要更改多级配置。

  2. Nexus UI中绝对没有NuGet包的集成。您甚至无法搜索NUGet工件,这对管理和维护至关重要(这就是为什么仅从Visual Studio进行搜索还不够)。这主要是因为Nexus非常注重Maven和Maven布局; 在Artifactory中,您可以像任何其他工件一样搜索和管理NuGet包。您可以查看来自nuspec元数据in the UI的信息,甚至可以深入查看NuPkg包下单个文件的内容,并检查其内容。

  3. Artifactory中的安全集成也更容易 - 无需手动生成特殊密钥,但密钥只是用户名和密码或安全密码的组合。如果您希望您的用户NuGet密码与Artifactory的MS-AD / LDAP集成同步,那就太棒了。在Nexus中,NuGet使用隔离的安全领域。

  4. Artifactory实现了NuGet搜索的完整范围,包括更深奥但有用的用例,底层实现使用内存缓存和持久的,预先计算的,可搜索的属性的组合来确保NuGet即使对于庞大的存储库,查询也非常快速且可扩展;不确定Nexus是否使用类似的优化。

  5. 我希望有所帮助。

    PS。 NuGet支持是Artifactory的Pro版本的一部分,并且在Nexus OSS since september 2014中免费提供。

答案 1 :(得分:9)

Nexus支持NuGet,您可以直接在其中托管或代理您的NuGet存储库。看看here

我是Maven和Nexus粉丝,所以我有偏见。我使用过Artifactory。这是一个很好的工具,但我发现Nexus在当时要好得多。我相信NuSet功能也可以在OSS版本中使用,但您可能需要仔细检查。

我不会争论为什么以及如果Nexus比Artifactory更好,因为它不公平并且只会引起火焰战争。我自己的理由是:Sonatype的家伙是Maven,Nexus和Maven Central背后的人。这使它们成为事物的核心,因此,就这些工具的内部及其互操作性而言,他们的知识总是更深入。

如果您对Nexus熟悉和熟悉,我坦率地认为您没有理由转换。但是,您可以自己决定。看看here