TFS的工作项字段可以在所有工作项类型之间共享。例如自定义了一个字段“验证迭代”(Mycompany.IterationValidation)那么在需求、Bug中都可以添加这个字段;同样在其他工作项中不能再定义一个同名的新的字段“验证迭代”。一旦已经定义并在TFS的工作项中使用了字段,这个字段便会被TFS定义到了数据库的结构中,不能随意删除。即使管理员在工作项定义中删除了该字段,与这个字段相关的数据和结果都还保留在数中,你会发现当你重新将这个字段添加回工作项中时,原来的数据还存在。

当你需要重新命名一个字段时,则需要我们彻底删除工作项字段,然后再重新创建这个同名的字段。

那么如何彻底的删除TFS的工作项字段呢,这里必须使用TFS的工作项命令工具Witadmin.exe。由于彻底删除工作项字段会永久删除这个字段保存的信息,因此我们一般需要通过以下几个步骤,确保安全删除。

1. 查询字段被哪些工作项使用了

witadmin listfields /collection:http://tfs2015cn:8080/tfs/defaultcollection /n:Mycompany.IterationValidation

上面的命令查询出来了字段被引用的工作项类型和团队项目

2. 通过TFS Power Tools 或者命令方式从TFS工作项中删除这个字段。注意,如果页面中显示了字段,也需要一并删除。

3. 重新运行上面的命令,确保没有工作项引用的该字段,如下图:

我们会发现,即使删除了这个字段,但是在工作项查询中还是看到之前存储的数据,如下图:

4. 下面我们就可以彻底删除这个字段了

witadmin deletefield /collection:http://tfs2015cn:8080/tfs/defaultcollection /n:Mycompany.IterationValidation

此时刷新查询,你会发现系统提示字段不存在的错误信息,如下图

通过上面的操作,我们已经从TFS中永久性的删除了这个字段。如果我们使用之前备份的工作项定义XML文件,导入到系统中,会发现字段已经重新创建,但是数据已经永久性被删除了。

我们可以通过上面的方法实现字段的删除、更名、更改字段类型等用途。

 

http://www.cnblogs.com/danzhang/  ALM MVP 张洪君

如何彻底删除TFS的工作项字段的更多相关文章

  1. 如何自定义TFS中工作项的字段20141010

    如何自定义TFS中工作项的字段 我们以VS2013为例,TFS也是2013版本的: 1. 安装小插件 需要安装Visual Studio Team Foundation Server 2013 Pow ...

  2. TFS中工作项的定制-修改面板

    上一篇文章我们讲到了<TFS 中工作项的订制-修改工作流>,工作流只要我们设计出来,就可以进行定制修改了.这次通过简单的案例,了解一下,工作项的面板如何定制.     1.软件准备     ...

  3. TFS中工作项的定制- 字段功能定义

    参考,翻译此页面All FIELD XML Elements Reference(http://msdn.microsoft.com/en-us/library/ms194953.aspx) 对于每一 ...

  4. TFS 中工作项的定制-修改工作流

    我们都会用到TFS中的工作项.一般来说,最主要的会用到任务.bug这些工作流来进行项目管理里.但我们发现,实际上,有些模板中的工作流并不能完全符合我们的需要,因此我们会进行工作流的定制操作.下面就会通 ...

  5. TFS实现需求工作项自动级联保存

    目前在一个大型的金融客户软件研发平台项目实施和支持过程中,客户的质量管理团队基于该平台以及结合其它的平台数据,针对需求管理和业务过程需要拟定了一套完整的需求提出.评审.设计以及实现的流程.基于这套流程 ...

  6. Azure DevOps Server (TFS) 修改工作项附件大小限制

    1. 问题描述 当上传工作项附件时,系统提示"附件大小限制" 2.解决方案 2.1 默认设置 默认情况下,Azure DevOps Service和Team Foundation ...

  7. #VSTS日志# 2015/12/10 – 终于可以删除工作项了

    最近的更新不少,废话少说,直接上干货 定制工作项字段 本周的更新后,所有的用户都可以在vsts上直接给工作项添加字段了,具体内容包括– 添加新字段(日期,字符串,整形,数字)– 字段显示位置配置– 过 ...

  8. 在定制工作项时,把“团队项目”作为变量获取生成版本信息

    有用户最近提出这个需求: 通过工作项定制,新增一个字段用以保存项目Bug的"影响版本"信息,但是需要从当前团队项目的服务器生成纪录中获取版本的选项,类似默认模板中的"发现 ...

  9. 从TFS 删除工作项

    一.进入命令执行窗口的方式 1.若你的TFS服务器上安装了VS开发工作,可以按以下步骤,进入命令行方式,图如下: 2.若你TFS上没有安装VS开发工作,可以从你的开发机器上的VS安装目录下(一般情况下 ...

随机推荐

  1. C# 通过Exchange server 发送邮件

    微软的Exchange邮件服务不同与一般的邮件server,他不能简单使用SmtpClient等组件实现邮件收发的功能. 那么怎么通过Exchange服务发送邮件呢? 微软的Exchange服务都有w ...

  2. Windows 程序 dump 崩溃调试

    Windows 程序捕获崩溃异常 生成dump 概述 事情的起因是,有个同事开发的程序,交付的版本程序,会偶尔随机崩溃了. 悲催的是没有输出log,也没有输出dump文件. 我建议他给程序代码加个异常 ...

  3. windows下测试flask的例子tuorial报错flask KeyError: 'DATABASE'

    windows下测试flask的例子tuorial报错flask KeyError: 'DATABASE' flask KeyError: 'DATABASE' 提示是 变量 database错误 由 ...

  4. 无法定位程序输入点 Can't load package

    ---------------------------Toggle Form/Unit (F12): bcb.exe - 无法找到入口--------------------------- 无法定位程 ...

  5. 跟我学算法-吴恩达老师(mini-batchsize,指数加权平均,Momentum 梯度下降法,RMS prop, Adam 优化算法, Learning rate decay)

    1.mini-batch size 表示每次都只筛选一部分作为训练的样本,进行训练,遍历一次样本的次数为(样本数/单次样本数目) 当mini-batch size 的数量通常介于1,m 之间    当 ...

  6. 5月23日Google就宣布了Chrome 36 beta

    对于开发人员来说,本次更新的重点还有element.animate().HTML Imports.Object.observe()的引入,以及一个改进后的throttled async touchmo ...

  7. css常用属性初总结:伪元素和伪元素

    前面几遍中我们分别说到了id选择器和class选择器,以及它们的区别和联系,下面大家一起来探究一下神奇的为类和伪元素吧. 其实以前我对伪类和伪元素也是搞得稀里糊涂的,现在决定剥开它神秘的外衣,首先,究 ...

  8. Linux下MariaDB 安装及root密码设置(修改)

    根据官方说明在/etc/yum.repo.d/下添加repo: # MariaDB 10.2 Fedora repository list - created 2017-11-25 05:55 UTC ...

  9. 表达式SpEL方式的属性注入

    -----------------------siwuxie095 表达式 SpEL 方式的属性注入 表达式 SpEL 方式的属性注入是 Spring 3.x 版本后提供的方式 1.编写一个普通类 B ...

  10. RocketMQ:Cannot allocate memory

    使用Storm本地模式消费RocketMQ数据的时候, 消费一点数据之后,就会出现如下错误: Java HotSpot(TM) 64-Bit Server VM warning: INFO: os:: ...