我试图让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工作区之外!

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

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

其他回答

加一块鸡块。在解决方案中的.nuget文件夹中的配置文件。 在鸡块中加入以下物质。配置文件:

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

disablesourcecontrointegration是TFS版本控制的诀窍。

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

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

我的.tfignore包含这一行:

\packages

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

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

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

Terje的答案对我来说并不总是有效,有时它会工作一段时间,但随后它会再次为我等待一大堆“添加”。

我找到的唯一永久解决这个问题的方法是在我的工作区中隐藏packages文件夹。

例如:

Type      Server                Local
============================================
Active    $/Work/Main           C:\Code\Main
Cloaked   $/Work/Main/Packages

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

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

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