.tfignore 不忽略文件

Posted

技术标签:

【中文标题】.tfignore 不忽略文件【英文标题】:.tfignore is not ignoring files 【发布时间】:2017-07-21 02:16:18 【问题描述】:

我有一个如下所示的 .tfIgnore 文件,其中已经签入

\xx.Phoenix.Web\bower_components
\xx.Phoenix.Web\node_modules
*.autogen.cs

我希望与.autogen.cs 匹配的每个文件都被忽略。 但问题是当文件由 t4 模板生成时,文件显示在挂起的更改中,见下图,xx.autogen.cs 被识别为add

即使我在下面尝试过但仍然无法正常工作

Phoenix\Domain\Entities\*.autogen.cs

\Phoenix\Domain\Entities\*.autogen.cs

我们正在使用 Vs2013 + Tfs2017

【问题讨论】:

您使用的是本地工作空间还是服务器工作空间? @DanielMann 本地工作区 你把忽略文件放在哪里了?在工作区的根目录下? @Eddie-MSFT 是的 【参考方案1】:

首先,请确保您创建的.tfignore 文件没有任何问题。此文件没有任何后缀。具体怎么看我在this question的回复。

还要检查文件是否已经在源代码管理中。如果是,.tfignore 将不适用于他们。

解决此问题的一种方法是将您的 VS 更新为 VS2015Update 3。 .tfignore 应该可以正常工作。你可以试试这个版本,它对 tfignore 做了一些改进。

更多处理问题的方法可以参考 GitHub 上的这篇博客:Things in ".tfignore" still are shown in pending changes

【讨论】:

感谢您的回答,.tfIgonre 是从“排除文件”上下文菜单中创建的,并且受源代码控制。唯一的问题是我们公司正在使用vs2013,我们现在无法更新到vs2015Update3,所以这似乎是一个已知问题? 如果.tfignore 可以与其他文件和文件夹一起使用,那么@RezaRahmati *.autogen.cs 就无法使用。可能是 Team Explorer 和 VS for 2013 版本的缺陷。尝试使用此解决方法将 $ 字符添加到实体文件夹名称中。 TFS 不允许在文件名中使用 $ 字符,因此无法将其添加到源代码管理中。否则,您现在可能必须手动排除此文件。 引用的 Git Hub 博客的链接无效。假设您指的是具有相同文档标题的链接:github.com/aspnet/Tooling/issues/18 Also check if the files already in source control. If they are, .tfignore won't apply to them. - 是否可以忽略此类文件? @neleus 对于此类文件,您需要在源代码管理中删除/销毁这些文件,然后签入.tfingore 文件。下次您再次签入文件时,它也会在 VS IDE 中自动排除。【参考方案2】:

转到源代码管理资源管理器并删除您要忽略的文件夹或文件。

【讨论】:

我之前做过,它不起作用,问题是使用vs2013,现在我们正在使用vs2017,它按预期工作 这在我的环境中有效 - 通常,我希望这会从磁盘中删除文件,但它们仍然存在,并且被排除在 tf 之外

以上是关于.tfignore 不忽略文件的主要内容,如果未能解决你的问题,请参考以下文章

如何创建 .tfignore 文件?

Visual Studio 2015 TFS .tfignore 文件

让 TFS 忽略我的包文件夹

.tfignore Office 临时文件

svn设置忽略文件为啥不管用

git配置忽略文件(已提交文件和目录的忽略)