我的建议是更新最新版本的nuget版本,然后在团队中的所有视觉工作室中添加nuget存储库以指向相同的文件夹位置。
,你需要了解的唯一的事情,至少是如果使用2013版本的开发者(A队)一个删除一个包不应该有使用2017年开发(B队)的任何问题因为当你获得最新版本的资料库文件夹后,当Nuget识别出该文件夹不在包文件夹中时,因为它可以根据package.config来识别哪些文件已安装,哪些不是,那么你应该再次得到依赖项它作为源代码管理工具的新变化,之后第二个项目将指向正确的引用,并且您的团队A将不会将其作为其依赖项的一部分包含在内。
第二种方法:你可以去你的vs2013项目,并更新到使用最新的配置(NuGet.Config文件)新的存储库,应该工作的所有引用
下面是我按照我需要的步骤从零开始配置NuGet
NUGET CONFIGURATION: 该方法是统一和减少所有项目的重复依赖关系,并将它们放置在每个项目都可以使用的共同位置。优点不仅仅是统一依赖关系;它还减少了TFS上的空间,并保留了自动构建的分层结构。
STEP 1:常见的NuGet软件包的文件夹
首先,你需要在一个软件包你所有项目的根级别创建Common文件夹文件夹内。如果您希望在其他项目中包含的所有.NuGet包到后面的文件夹,或者在包含新的依赖关系时将其保留到Visual Studio,请随意手动复制。 Common将作为Nuget存储库工作,但在本例中作为本地Nuget。库。你的Visual Studio配置应该知道这一点。按照下一步
然后你需要用加号按钮来创建一个新的种子库(本地)。下面我命名为:Packages。之后,浏览新包的文件夹。然后单击确定
现在你可以去你的项目,并请右键单击,包括一个新的依赖
然后去包源,并选择套餐,你会看到所有包可在包文件夹应该是空的第一次
这里的想法是从Packages文件夹而不是从Nuget存储库下载我们需要的软件包,如果软件包不存在,则更改为搜索nuget.org选项并从那里下载软件包。效果应该是一样的
第2步:准备配置文件
在这里我们要避免的NuGet里面保存包“套餐”的文件夹,在我们的项目,这是默认的根当你下载一个包时,nuget的行为。
相反,我们想将软件包下载到通用/包文件夹。为了做到这一点,我们需要在我们的结构中添加一个Nuget.config文件。在项目的根目录下创建一个NuGet.Config文件。 TFS查看
内NuGet.Config型
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="repositoryPath" value="$\..\Common\Packages" />
</config>
</configuration>
对于repositoryPath设置,您可以指定使用$令牌(推荐)的绝对路径或相对路径。基于NuGet.Config所在位置的$ token($ token实际上是相对于NuGet.Config位置下的一个级别)。所以,如果我有\ Team Project \ NuGet.Config并且我想要\ Team Project \ Common \ Packages,我需要指定$ .. \ Common \ Packages作为值。
步骤3:最后一步。
开始下载软件包并确保检入所有更改。 如果您在项目的根目录下有一个包文件夹,您可以将其删除,以防您想要对新文件夹设置正确的引用。随意删除它,如果这是你想要的。但是,如果你想让遗留代码指向包并且开始使用新的公用文件夹作为将来的包,那么你需要保留这两个包。 下面我修复了所有的引用,没有“包”文件夹,仍然可以包含新包。
Enjoy !!!