如何从TFS中删除nuget Packages文件夹?

如何从TFS中删除nuget Packages文件夹?,tfs,nuget,Tfs,Nuget,我刚刚经历了一场地狱。事实证明,TFS一直在同步软件包,我一次得到了两个版本的Microsoft.Web.Optimization及其依赖项。NuGet确信我已经安装了最新版本,即使重新安装也没有任何改变。但同时,我的项目不会构建,或者,如果它们构建了,它们也不会启动,抱怨它们找不到清单中给出的库版本 我设法解决了这个问题,从NuGet console卸载了这些软件包,从硬盘上物理删除了它们的文件夹,然后重新构建(重新安装丢失的最新版本)。但是我手动删除的包文件夹仍然存在于源代码管理资源管理器中

我刚刚经历了一场地狱。事实证明,TFS一直在同步软件包,我一次得到了两个版本的Microsoft.Web.Optimization及其依赖项。NuGet确信我已经安装了最新版本,即使重新安装也没有任何改变。但同时,我的项目不会构建,或者,如果它们构建了,它们也不会启动,抱怨它们找不到清单中给出的库版本

我设法解决了这个问题,从NuGet console卸载了这些软件包,从硬盘上物理删除了它们的文件夹,然后重新构建(重新安装丢失的最新版本)。但是我手动删除的包文件夹仍然存在于源代码管理资源管理器中。我无法删除它们,当我选择其中一个时,“删除”按钮变灰。我担心下次我拿到最新的版本时,它们会再次出现


我如何预防它?我想从解决方案中完全删除它们。在最坏的情况下,可以忽略它们,但由于它们位于项目之上的级别,我无法将它们输入到项目的.tfignore文件中,并且Visual Studio不允许我将.tfignore文件添加到解决方案本身

是否可以选择不将Packages文件夹签入TFS?NuGet现在支持自动包恢复,即在生成时自动恢复包

以下是用于迁移到此新模型的文档:


这可能会为您节省很多签入包文件夹的麻烦

这篇文章可以说是最好的回答:

NuGet文档提供了它们,我刚刚针对VSTS(Azure托管的TFS)成功地跟踪了Visual Studio 2015。自2016年11月起,所有内容均已全面更新。这同样适用于Visual Studio 2017 RTM(2017年3月)

如上所述,我添加了以下文件:

.tfignore

\packages
!\packages\repositories.config
.nuget\nugget.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <solution>
    <add key="disableSourceControlIntegration" value="true" />
  </solution>
</configuration>


我必须删除packages文件夹并签入delete,然后package restore将启动并重建文件夹,但VS将不再自动将其添加到源代码管理中。

在packages文件夹上强制获取最新版本。从那以后它就不会变灰了。然后删除它。我知道这是一篇旧文章,问题是TFS根本不应该跟踪packages文件夹,正如OP正确指出的那样,它会导致各种不一致,并占用您的带宽。当TFS试图为您维护packages文件夹时,包还原机制就会失效。