Visual Studio 2015新文件未自动添加到源代码管理中

Lau*_*ost 28 tfs visual-studio visual-studio-2015 azure-devops

我刚刚升级到VS2015,我遇到了一个我以前没见过的问题.使用源代码管理下的现有解决方案,我可以修改文件,并将其作为挂起的更改进行检索,准备签入TFS.

但是,我添加了一个新文件(Test.cs作为此屏幕截图中的示例),它不会被选为新文件.

新文件与修改文件的屏幕截图

我需要右键单击它并单击"将文件添加到源代码管理"

将文件添加到Source Control屏幕截图

这从来就不是问题.我希望我添加的所有内容都作为一个新文件被提取作为待定更改.我怎样才能做到这一点?我以前在以前的Visual Studio版本中没有看到过这个.

我可以确认这个问题在另一台机器上是一样的.此外,新文件也未在"推广候选人更改"中被选中.

如果我然后单击"将文件添加到源代码管理",我收到此消息.

忽略所选文件 - 无论如何添加它?

"忽略所选文件.无论如何将其添加到源代码管理中?"

我的.tfignore文件只有一个忽略包的指令,所以我认为这个文件不是问题所在.

如何让我的设置重回正轨?

更新:

我注意到这只发生在我工作区的"Release"分支上.所有其他分支都按预期运行.此外,如果我然后采取分支"发布"并称之为"Release1",问题就完全消失了!

具有特定名称"Release"的分支是否具有TFS中的任何特殊功能?

Mar*_*rtW 18

名为Release的文件夹及其内容将自动从TFS中排除(与Debug和许多文件类型一起).您可以通过创建一个.tfignore文件来覆盖这个特定的文件夹,因为这样的"自定义哪些文件是通过版本控制忽略"部分中详细链接

自定义版本控制忽略哪些文件

默认情况下,版本控制会忽略某些类型的文件(例如.dll文件).结果是:

将忽略的文件添加到在本地工作空间中映射的文件夹时,它们不会显示在团队资源管理器的"待更改"页面中.

当您尝试使用"添加到源代码管理"对话框添加忽略的文件时(例如,通过将它们拖动到"源代码管理资源管理器"中),它们会自动显示在"排除的项目"选项卡中.

您可以通过将名为.tfignore的文本文件放在要应用规则的文件夹中来配置忽略哪些类型的文件..tfignore文件的效果是递归的.但是,您可以在子文件夹中创建.tfignore文件以覆盖父文件夹中.tfignore文件的效果.

.tfignore文件规则

以下规则适用于.tfignore文件:

#开始评论行

*和?支持通配符.

除非以\字符作为前缀,否则filespec是递归的.

!否定filespec(不会忽略与模式匹配的文件)

.tfignore文件示例

忽略ProjA子文件夹及其所有子文件夹
ProjA*.cpp中的.cpp 文件

忽略此文件夹中的
.txt 文件*.txt

忽略此文件夹中的.xml文件及其所有子文件夹
*.xml

忽略Temp子文件夹
\ Temp 中的所有文件

不要忽略此文件夹中的.dll文件,也不要忽略它的任何子文件夹
!*.dll


csr*_*ell 11

我们也遇到了这个问题,但在我们的情况下,这是因为我们的文件夹以".Lib"结尾.从这个SO问题中弄清楚:Visual Studio 2015.文件未添加到TFS


小智 8

由于名为"发布"的分支,我们遇到了同样的问题.但问题仅出在Visual Studio 2015 Update 3.使用Visual Studio 2015 Update 2,一切正常.因此,Visual Studio Update 3必须已更改其行为.回到原来的行为是有用的.


小智 5

将.tfignore文件添加到包含您不希望忽略的扩展名的release文件夹中:

!*.vb
Run Code Online (Sandbox Code Playgroud)

我尝试将此添加到我的解决方案文件夹中存在的.tfignore,但它没有帮助.它只在我向父版本文件夹添加一个时才起作用.

..\Release
..\Release\.tfignore <-- this one
..\Release\SolutionA\
..\Release\SolutionA\.tfignore
Run Code Online (Sandbox Code Playgroud)

关于这个主题的msdn主题