放置包以匹配您的存储库布局
下面是a的一个例子自定义布局命名nuget-default。
在本例中,模块标识必需的三个字段是:
- 组织=
orgPath
- 模块=
模块
- 基础修订(
baseRev
)在本例中不是布局层次结构的一部分,但它作为必填字段之一包含在这里。
您可以配置此自定义布局,如上图所示,或简单地将下面的代码片段复制到您的全局配置描述符:
nuget-default [orgPath]/[module]/[module].[baseRev](-[fileItegRev])。[ext] false 。* < / folderIntegrationRevisionRegExp > < fileIntegrationRevisionRegExp >。* < / fileIntegrationRevisionRegExp > < / repoLayout >
由于包布局位于相应的文件夹层次结构中,因此人工版本清理工具可以正确检测以前安装的版本。
发布到本地存储库
选择NuGet存储库时工件模块树浏览器,单击帮我介绍显示可用于配置Visual Studio或NuGet客户端以使用选定的存储库发布或解析工件的代码片段。
远程存储库
使用远程NuGet存储库时,Artifactory配置取决于远程存储库的设置方式。
不同的NuGet服务器实现可能在不同的路径上提供包资源,因此在代理远程NuGet存储库时,Artifactory中的提2022世界杯阿根廷预选赛赛程要和下载资源位置是可定制的。
要创建远程存储库,请执行in的政府模块,转到存储库|存储库|远程,点击新建远程存储库.
下面是一些例子:
为NuGet画廊配置NuGet v3的Feed URL
http://host:port/api/v3/nuget可以/ repoKey,
而URL可以保留http://host artifactory / api / nuget / repoKey /。
因此,要将其定义为新的存储库,您应该设置存储库URL来https://www.nuget.org
,它的提要上下文路径来api / v2
和下载路径来api / v2 /包
.
- 配置NuGet v3 API和元数据需要配置NuGet v3 Feed
http://host:port/api/v3/nuget可以/ repoKey
而URL可以保留http://host:port/artifactory/api/nuget/repoKey/
- 另一个Artifactory存储库(即智能远程NuGet存储库)在
http://host:port/artifactory/api/nuget/repoKey/Packages
它的下载资源在http://host:port/artifactory/api/nuget/repoKey/Download
.
要将其定义为新的存储库,您应该将存储库URL设置为http://host:port/artifactory/api/nuget/repoKey
,它的提要上下文路径应该是空着的吗下载路径来下载,像这样:
使用代理服务器
如果你通过代理服务器访问NuGet Gallery,你需要在代理的允许列表中定义以下两个url:
* .nuget.org
- 一个
z320820.vo.msecnd.net
(NuGet Gallery当前的CDN域名)
虚拟存储库
Artifactory中定义的虚拟存储库聚合来自本地和远程存储库的包。
这允许您从为虚拟存储库定义的单个URL访问本地托管的NuGet包和远程代理的NuGet库。
要创建虚拟NuGet存储库,请使用in的政府模块,在存储库|存储库|虚拟,点击新建虚拟存储库和集NuGet成为它的包类型。年代选择要包含的底层本地和远程NuGet存储库存储库部分.
从Visual Studio访问NuGet存储库
NuGet存储库的路径必须带有api/ NuGet前缀
当配置Visual Studio通过Artfactory访问NuGet存储库时,存储库URL必须以api / nuget在小路上。
例如,如果您使用Artifactory独立或作为本地服务,您将使用以下URL配置Visual Studio:
http://localhost:8081/artifactory/api / nuget /<库关键>
或者,如果你正在使用Artifactory Cloud, URL将是:
https:// < server name > .jfrog.io / artifactory /api / nuget /<库关键>
Artifactory通过以下URL的REST API公开它2022世界杯阿根廷预选赛赛程的NuGet资源:http://localhost:8081/artifactory/api / nuget/
> <库的关键。
这个URL处理所有与NuGet相关的请求(搜索,下载,上传,删除),并支持V1和V2请求。要使用V3请求,需要使用NuGet V3 API配置Visual Studio。
要配置NuGet Visual Studio扩展使用Artifactory,请在“选项”窗口中检查相应的存储库:(您可以从工具菜单中访问选项)。
使用NuGet命令行
NuGet存储库的路径必须带有api/ NuGet前缀
当使用NuGet命令行通过Artfactory访问存储库时,存储库URL必须以api / nuget
在小路上。这适用于所有NuGet命令,包括nuget安装
和nuget推
.
例如,如果你使用Artifactory独立或作为本地服务,你可以使用以下URL访问NuGet存储库:
http://localhost:8081/artifactory/api / nuget /<库关键>
或者,如果你正在使用Artifactory Cloud, URL将是:
https:// < server name > .jfrog.io / artifactory /api / nuget /<库关键>
如果命令中有子文件夹,NuGet安装/删除将无法工作(即使NuGet推送命令中有子文件夹)。
使用Nuget命令行工具:
- 下载NuGet.exe
- 将其放置在文件系统中一个众所周知的位置,例如
c: \跑龙套
. - 确保
NuGet.exe
就在你的路上
有关如何使用NuGet命令行工具的完整信息,请参阅NuGet Docs命令行参考.
首先配置一个指向Artifactory的新源URL:
添加名称Artifactory -Source http://localhost:8081/artifactory/api/nuget/
使用V3请求,需要配置NuGet CLI with NuGet V3 API。
NuGet身份验证
NuGet API Key鉴权
NuGet工具需要对推送、删除等敏感操作进行鉴权apikey
.您应该使用的API密钥的形式为用户名:密码
,其中密码可以是明文或加密.
使用NuGet命令行接口设置API密钥:
nuget setapikey admin:password -Source Artifactory
现在可以对新添加的服务器执行操作了。例如:
nuget install log4net -Source Artifactory
NuGet Access Token鉴权
您还可以使用访问令牌对服务器进行身份验证。
- 创建一个NuGet存储库并按照设置页面操作。
- 不是在URL中传递用户凭据,而是传递人工访问令牌,例如:
添加名称Artifactory -Source
.-access token
请注意,以下也使用访问令牌:
添加-Name
nuget setapikey
匿名访问NuGet存储库
默认情况下,Artifactory允许匿名访问NuGet存储库。它的定义是政府|安全|通用配置.详情请参阅允许匿名访问.
没有匿名访问的工作
为了能够跟踪用户如何与存储库交互,我们建议取消选中允许匿名访问上述设置。这意味着用户在使用NuGet客户端时需要输入用户名和密码。
您可以使用以下命令配置您的NuGet客户端需要用户名和密码:
nuget sources update -Name Artifactory -UserName admin -Password password
您可以通过检查以下段是否出现在您的% APPDATA % \ NuGet \ NuGet。配置文件:
packagesourcecrecredentials >
NuGet。配置
文件也可以放在您的项目目录中,更多信息请参考NuGet配置文件
允许匿名访问
Artifactory支持NuGet存储库允许匿名访问启用。
当允许匿名访问默认情况下,Artifactory不会向NuGet客户端查询身份验证参数,因此您需要向Artifactory指示以不同的方式请求身份验证参数。
属性可以覆盖默认行为力身份验证复选框中的新建或编辑存储库对话框。
设置后,Artifactory将首先从NuGet客户端请求身份验证参数,然后再尝试访问该存储库。
NuGet API v3注册表支持
对于。net和Visual Studio用户:微软NuGet V3 API变更公告。
Artifactory现在支持NuGet API v3提要,并允许您代理远程NuGet API v3存储库(例如NuGet画廊)和其他使用API v3提要设置的远程存储库。
要启用API v3,请配置远程repo v3提要URL值。
配置NuGet CLI/ Visual Studio以使用NuGet v3 API
手动添加protocolVersion = 3
属性设置为NuGet。配置文件:
- 对于Linux安装:该文件位于
~ / config / NuGet / NuGet.Config
- 对于Windows安装:找到通常在下面的文件
% appdata % \ NuGet \ NuGet。配置
并添加/ v3 /
源头URL.
<?XML版本="1.0"编码="utf-8"?>... ...
NuGet SemVer 2.0包支持
Artifactory现在支持SemVer 2.0规则对于NuGet存储库(包括NuGet API v2和API v3),这意味着你现在可以使用带点符号的预发布号或向版本添加元数据,例如:MyApp.3.0.0-build.60
,MyApp.1.0 + git.52406
.
Artifactory在SemVer 2.0规则中提供下载包的请求。例如,如果某个包的最新版本符合SemVer 2.0约定,Artifactory将把它返回给客户端。使用SemVer 2.0约定的NuGet包可以从本地、远程和虚拟存储库以及NuGet API v2和v3提要中提供服务。
带有SemVer2的NuGet包不能用于旧的NuGet客户端(4.3.0版本之前)。这是一个突破性的变化,是为了与官方的全局存储库行为保持一致。要保留旧的行为,请使用artifactory.nuget.disableSemVer2SearchFilterForLocalRepos
国旗。
查看单个NuGet包信息
你可以通过在Artifactory的树状浏览器中选择NuPkg文件并选择NuPkg Info选项卡来查看注释NuGet包的所有元数据:
NuGet Build信息
通过使用JFrog CLI运行NuGet构建,您可以在Artifactory中存储详尽的构建信息。
JFrog CLI从构建代理收集构建信息,然后将其发布到Artifactory。发布后,构建信息可以在下面查看构建.
有关使用JFrog CLI进行NuGet构建集成的更多详细信息,请参考构建NuGet包请参见《JFrog CLI用户指南》