nuget - nuget.exe 忽略 packageSourceCredentials 的继承
问题描述
是否可以配置 Nuget,以便在解决方案目录中的文件中配置包源,而在位于用户级别 ( )nuget.config
的文件中配置这些源的凭据?nuget.config
%appdata%\NuGet\NuGet.Config
阅读设置如何应用于nuget 操作,似乎nuget.config
具有某种继承性。我试图通过以下方式使用此继承为我的团队配置 nuget。
每个开发人员都将拥有一组个人的 Nuget 存储库凭据。
每个 Visual Studio 解决方案都将
Nuget.config
在解决方案目录中包含一个文件。2.1。该
Nuget.config
文件将包含两个包源:nuget.org 和一个私有凭据所需的源。每个开发人员都将在位于用户配置文件 (
%appdata%\NuGet\NuGet.Config
) 中的文件中配置私有 Nuget 源的凭据。通过这种方式,这些凭据不会提交给源代码控制。
nuget.config
以下是我尝试使用的文件的一些示例:
解决方案级别文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/api/v3/index.json" />
<add key="Private" value="url_for_the_private_feed" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
</configuration>
用户级文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</packageSources>
<packageSourceCredentials>
<Private>
<add key="Username" value="user_name_here" />
<add key="Password" value="encrypted_password_here" />
</Private>
</packageSourceCredentials>
</configuration>
出于某种原因,我无法让它工作。
解决方案
我终于发现,如果 NuGet 命令包含参数,那么如何应用设置中-configFile <path to nuget.config>
描述的行为将不适用,相反,NuGet CLI 只会考虑将配置文件作为参数传递。
这在文档中并不清楚。出于某种原因,我认为我可以将nuget.config
文件传递给 NuGet CLI,它会将该文件与用户级配置和计算机级配置结合使用。
推荐阅读
- php - 无法更新mysql中的列
- java - Retrofit2拦截器将特殊字符转换为Android中的问号
- python - Flask/Python - 如何以文本形式而不是列表呈现这些数据
- python - How to create Polygon out of {'northeast': {'lat':}, 'southwest': {'lat': }} (google maps) Python
- url - curl (3) URL 使用错误/非法格式或缺少 URL
- amazon-web-services - 部署到 aws 时,Dynamo db Seed 数据插入不起作用
- pyspark - pyspark 转置数据帧
- three.js - 添加材质 Three.js 时 GLTF 动画不播放
- shell - 如果命令在 10 秒内没有输出任何内容,如何退出命令?
- twitter - Ionic 3 的 Twitter Connect 插件中的登录会话失败