为NuGet的repositoryPath选择一个网络共享

时间:2016-12-19 12:12:48

标签: c# .net tfs nuget

我们在源代码控制的根目录中使用nuget.config文件。这样,此源代码控制中的所有解决方案都可以使用相同的nuget配置,因此使用相同的repositoryPath来nuget下载要使用的包。

在整个互联网上,我都没有提到将网络共享作为nuget.config文件的存储库路径。在我看来,这样做通常确实有意义。

为什么每个开发人员和构建服务器都必须自己从nuget.org下载nuget-packages,当我们可以轻松指定一个可访问的位置时,例如\ myTfsServer \的NuGet \ RepositoryPath?

p=[[3, 4], [2, 3]]
node=[5,3]

def foo(node, p_as_list):
    #this line
    p_as_list=p_as_list[-1].copy()  # copy here!
    p_as_list.append(node)

foo(node, p)  # don't copy here!
print(p) 

有什么我明显错过的吗?

更新 我不是在谈论消息来源。恢复下载所有软件包的位置就是我所说的。我不想检查我恢复的包,所以我尝试将repositoryPath弯曲到源代码控制之外......

1 个答案:

答案 0 :(得分:0)

在nuget.config文件中,有一些名为packageSourcesactivePackageSource的部分。

packageSources 列出了所有已知的包源。 activePackageSource 标识当前活动的来源或指示所有来源的汇总。

要为NuGet的repositoryPath使用网络共享,您需要在packageSourcesactivePackageSource部分添加新密钥,如下所示:

<packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="Network Share" value="\\myTfsServer\Nuget\RepositoryPath" />
</packageSources>


<activePackageSource>
    <add key="Network Share" value="\\myTfsServer\Nuget\RepositoryPath" />
</activePackageSource>