我试图让TFS(2013)忽略我的包文件夹。我不希望它源代码控制,因为我正在使用NuGet,它是伟大的!

我尝试了隐身(似乎不工作),我尝试了添加.tfignore文件-没有什么被忽略。为什么TFS团队不像很多Subversion客户端那样添加一个永久忽略文件夹或文件的选项呢?


当前回答

将您的解决方案设置为在构建时恢复,将检入包文件夹和包文件,但不会检入包。

其他回答

你可以永久设置这个一次性在你的AppData\漫游所有解决方案(旧的和新的)!

在您的%AppData%\NuGet\NuGet。配置文件,在</configuration> XML标记之前添加以下内容…

<config>
  <add key="repositoryPath" value="C:\NuGetPackages" />
</config>
<solution>
  <add key="disableSourceControlIntegration" value="true" />
</solution>

...你可以指定任何你想要的路径-重要的是把它放在你的TFS工作区之外!

现在你再也不用担心那些事了。您的解决方案文件夹将不再包含任何包;所有解决方案将默认使用您的自定义包位置。

注:此工作是基于每个用户。

上述问题的另一种解决方案如下。

将packages文件夹添加到TFS(不包含任何文件或子文件夹) 右键单击Packages文件夹 左键单击高级 单击斗篷

值得注意的是,这个解决方案需要应用于每个TFS工作空间。对我来说,它比使用.tfignore文件可靠得多。

您可以在防止TFS将已安装的NuGet包添加到源代码控制中这篇博客文章中阅读有关此方法的更多信息。

如果你正在使用Git和TFS,你需要添加一个“。gitignore”文件。您可以在“团队项目|设置| '添加忽略文件'”中执行此操作。然后打开文件并取消Nuget Packages内置的ignore语句的注释。

如果您正在使用TFVC并且配置了本地工作区,则可以使用“。tfignore”文件,该文件遵循与Git文件相同的格式。我认为你需要“packages/”。

对我来说有效的解决方案是在Nuget中创建.tfignore和下面的设置。配置:

<configuration>
  ...
  <solution>
    <add key="disableSourceControlIntegration" value="true" />
  </solution>  
  ...
</configuration>

我的.tfignore包含这一行:

\packages

[我正在使用Visual Studio 2015 Update 2]

这并不理想,目前在github/nuget上被记录为一个开放问题:

使它更容易从TFVC #493中省略包

我也有同样的问题。/包应该可以工作,但对我来说没有。包*。*起作用了。