问题 tfignore在VS 2013中没有工作


我正在使用Visual Studio 2013和TFS 2013.我一直试图让文件夹中的所有文件都不能使用.tfignore进行检查,并且需要花费数小时搜索并尝试不同的解决方案而没有运气。我按照说明操作 http://msdn.microsoft.com/en-us/library/vstudio/ms245454.aspx 并且无法让它发挥作用。任何帮助表示赞赏。

我的项目结构看起来像是:

  • 项目
    • 控制
    • TestIgnore
      • 将Class1.cs
      • Class2.cs
    • .tfignore

我的.tfignore有1行代码: \ TestIgnore

我的工作区设置为本地。

当我对Class1.cs进行更改时,当我签入时,Class1.cs处于挂起的签入列表中,我认为它不应该。


8718
2017-08-08 16:02


起源

Class1.cs文件先前已提交过吗?您只能忽略具有的文件 决不 已经入住了。 - Michael Sorens
是的,Class1.cs已经在TFS中了。我将尝试使用不在TFS中的文件,看看它是怎么回事 - vkom
我尝试在TestIgnore文件夹中添加一个新文件,但它仍然试图检查该文件。这可能是由于.csproj文件添加了一个新文件的记录,它试图检查它? - vkom
我在msdn上问了同样的问题,并得到了一个回复说这似乎是VS 2013中因为不支持tfignore的错误。我也在msdn上提交了一个bug,并且很好地关闭了这个问题。希望它很快就会得到修复。 - vkom
阅读此评论时,很明显.tfignore完全无法使用。 :-( - realtime


答案:


我对此感到非常沮丧,尽管将.tfignore文件放在与解决方案相同的文件夹中,并且删除了packages文件夹(我试图让TFS忽略),但似乎没有任何工作。在构建之后,nuget将恢复包和包将显示在挂起的更改窗口中。

但是一时兴起,记得我在某个地方看到的一些模糊的评论,我右键点击了解决方案资源管理器中的解决方案,并选择了“启用Nuget包恢复” - 它将一个.nuget文件夹添加到解决方案中,瞧瞧,在检查TFS的解决方案时,忽略了packages文件夹WAS。

我退出了VS2013,删除了packages文件夹,再次打开了解决方案,选择了“Rebuild solution”并恢复了包,但是在挂起的更改窗口中没有显示任何内容。终于成功了!

经过进一步调查,它似乎是nuget.config文件和设置“disableSourceControlIntegration = true”,这是必要的,如下所示 http://nuget.codeplex.com/workitem/4072


7
2017-10-17 08:27



谢谢,这正是VS2013中使用TFS和NuGet包恢复的问题。 .nu​​get / NuGet.Config文件是关键部分。看到 docs.nuget.org/docs/workflows/... 表示“默认情况下,NuGet.Config文件指示NuGet绕过将包二进制文件添加到源代码控制。只要您将此文件保留到位,自动包恢复将遵循此。请注意,NuGet.Config仅在使用Visual时有效Studio与Team Foundation Server(TFS)集成。“ - BrandonLWhite
因此,使用新的“自动包恢复”魔法(或多或少为零配置),您似乎必须手动添加此.nuget / NuGet.Config文件,以防止NuGet将所有恢复包添加到您的待定更改中。仅仅在.tfignore中使用它是不够的,因为你还必须阻止NuGet通过TFS API以编程方式添加它们。 - BrandonLWhite
多谢你们!我有一个.tfignore设置忽略packages文件夹,我的nuget.config将disableSourceControlIntegration设置为true,但visual studio仍然想尝试添加包。关于什么可能仍然出错的任何想法? - Dan Csharpster
@kristian,你能评论一下吗?你说的话为我解决了问题,我想给你信任。 - Richard II
@RichardII,我在原始答案中添加了我的评论 - Kristian


我在msdn上问了同样的问题,并得到了一个回复说这似乎是VS 2013中因为不支持tfignore的错误。我也在msdn上提交了一个bug,并且很好地关闭了这个问题。希望它很快就会得到修复。


6
2017-10-09 19:36





tfIgnore在Visual Studio 2013中不适用于我

爱德华王尔德的答案为我解决了这个问题。我不得不删除源控件本身已经签入的包。然后tfs会忽略这些变化。


1
2018-04-24 12:40





我有一个类似的问题,TFS阻止我检查 .tfignore 文件从项目根目录下放置2个文件夹。

我得到它只在工作时 .tfignore 文件放在项目的根文件夹中。 (.tfignore文件并排放置到“Main”文件夹中)。

通过这种方式,TFS让我检查我的 .tfignore 文件。


0
2017-08-29 04:34