是否可以在TFS源代码管理中基于每个项目设置要忽略的文件/文件夹?
例如,我有一个带有资产文件夹的网站,我不想进入源代码控制.这些资产由一个单独的系统维护.另外,我不想将几千兆字节的资源放入源代码控制中,但我需要在我的开发机器上使用几个示例,但我不想检查其中的那些.
如果我在绑定源控件的同时在这个网站上工作并刷新树,这些文件将自动再次添加
我想防止这种情况发生.
Ric*_*nks 169
如果您使用的是本地工作区(TFS 2012+),则现在可以使用该.tfignore
文件排除本地文件夹和文件的签入.
如果您将该文件添加到源代码管理中,则可以确保团队中的其他人共享相同的排除设置.
有关MSDN的完整详细信息 - http://msdn.microsoft.com/en-us/library/ms245454.aspx#tfignore
对于懒惰:
您可以通过
.tfignore
在要应用规则的文件夹中放置一个调用的文本文件来配置忽略哪些类型的文件..tfignore
文件的效果是递归的.但是,您可以在子文件夹中创建.tfignore文件以覆盖.tfignore
父文件夹中文件的效果.以下规则适用于.tfignore文件:
#
开始评论- *和?支持通配符.
- 除非以\字符作为前缀,否则filespec是递归的.
- !否定filespec(不会忽略与模式匹配的文件)
示例文件:
# Ignore .cpp files in the ProjA sub-folder and all its subfolders
ProjA\*.cpp
#
# Ignore .txt files in this folder
\*.txt
#
# Ignore .xml files in this folder and all its sub-folders
*.xml
#
# Ignore all files in the Temp sub-folder
\Temp
#
# Do not ignore .dll files in this folder nor in any of its sub-folders
!*.dll
Run Code Online (Sandbox Code Playgroud)
Jax*_*ian 84
NuGet文档提供了有关如何完成此操作的说明,我刚刚针对VSTS(Azure托管的TFS)成功地遵循了Visual Studio 2015和Visual Studio 2017.截至2016年 8月2018年,所有内容均已全面更新.
我建议您按照NuGet的说明进行操作,但只是回顾一下我的所作所为:
packages
文件夹未提交给TFS.如果是的话,那就把它拿出来吧..sln
除非另有说明,否则我们在下面创建的所有其他内容都会进入您文件所在的文件夹(NuGet的说明并不完全清楚)..nuget
文件夹.您可以使用Windows资源管理器为其命名.nuget.
以便成功保存.nuget
(它会自动删除最后一个句点)但直接尝试命名它.nuget
可能不起作用(您可能会收到错误或者它可能会更改名称,具体取决于您的Windows版本).NuGet.config
文件并添加以下内容并保存:NuGet.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
</configuration>
Run Code Online (Sandbox Code Playgroud)
.sln
的文件夹并创建一个新的文本文件并命名.tfignore
(如果使用Windows资源管理器,请使用与上面相同的技巧并命名.tfignore.
).tfignore:
# Ignore the NuGet packages folder in the root of the repository.
# If needed, prefix 'packages' with additional folder names if it's
# not in the same folder as .tfignore.
packages
# include package target files which may be required for msbuild,
# again prefixing the folder name as needed.
!packages/*.targets
Run Code Online (Sandbox Code Playgroud)
.tfignore
文件和.nuget
文件夹复制/粘贴到我所有的各种解决方案并提交它们,我不再让packages
文件夹试图潜入我的源代码控制仓库!虽然不是我的,但我发现sirkirby的这个.tfignore
模板很方便.我的答案中的示例涵盖了Nuget packages
文件夹,但此模板包含一些其他内容,并提供了其他示例,如果您希望进一步自定义这些示例.
Der*_*son 70
它确实显得有些笨重忽略Team Foundation Server的文件(文件夹).我找到了几种方法(使用TFS/Team Explorer/Visual Studio 2008).这些方法也适用于网站ASP项目类型.
一种方法是一个新的或现有的项目添加到项目(例如,右击项目,从Windows资源管理器中添加现有项目或拖放到解决方案资源管理器),让TFS过程中的文件(S)或文件夹,然后撤消未决项目的变化.TFS会将它们取消标记为具有待定的添加更改,并且文件将静静地放置在项目中并远离TFS.
另一种方法是使用Source Control Explorer的Add Items to Folder命令.这将启动一个小向导,在其中一个步骤中您可以选择要排除的项目(尽管我认为您必须使用此方法向TFS添加至少一个项目,以便向导让您继续).
您甚至可以添加禁止模式签到策略(在团队 - >团队项目设置 - >源代码管理... - >签到策略下)以禁止团队中的其他人错误地检查某些资产.
gRe*_*ReX 46
对于TFS 2013:
从VisualStudio- 团队资源管理器开始,在PendingChanges对话框中撤消状态[add]的更改,应忽略该状态.
Visual Studio将再次检测Add.单击"检测到:x add(s)" - 在排除的更改中
在打开的"促进更改"--Dialog中您可以使用Contextmenu轻松排除文件和文件夹.选项包括:
不要忘记签入已更改的.tfignore文件.
对于VS 2015/2017:
相同的过程:在TeamExplorer\Pending Changes中的"Excluded Changes选项卡"中,单击Detected:xxx add(s)
将打开"提升候选人更改"对话框,并在条目上右键单击"上下文菜单".错字现在修复:-)
我找到了像SVN一样在TFS中忽略文件的完美方法.
首先,选择要忽略的文件(例如Web.config).
现在转到菜单选项卡并选择:
文件源控件>高级>从源代码管理中排除web.config
......和繁荣; 您的文件将永久排除在源代码管理之外.
归档时间: |
|
查看次数: |
149432 次 |
最近记录: |