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

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


当前回答

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

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

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

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

其他回答

你可以永久设置这个一次性在你的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版本控制的诀窍。

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

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

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

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

您需要使用本地工作区才能使.tfignore工作。.tfignore文件必须位于包含要忽略的文件或文件夹的文件夹中。

所以如果你的解结构是这样的:

\Project
   \Packages
   \OtherStuff
   foo.cs

你可以把你的.tfignore文件放在\Project中:

\Project
   \Packages
   \OtherStuff
   foo.cs
   .tfignore

在你的案例中.tfignore的内容是:

\包

这里有一些文档:http://msdn.microsoft.com/library/vstudio/ms245454(v=vs.110).aspx#tfignore