回答
TFS全球名单确实得到臃肿,并且它确实阻碍表现。我们自己也有同样的问题。
我建议做以下几点:
- 更改工作项类型定义,包括允许现有值依赖全球名单上建立的列表WIT领域规则(例如“在Bugs中的Build中找到)。
- 定期(手动或计划)删除旧版本。您可以查看每个构建定义的保留策略。删除不被保留的构建是安全的(默认情况下每个定义最后10个)。我建议自动执行此操作并查询TFS数据库以确定哪些构建可以安全地删除。
- 或者,您可以查看构建的放置位置并解析目录结果(即保留存储在那里的构建)。
我们目前正在手动删除旧版本。然而,查询哪些构建要保留是一种痛苦。我正在寻找一种方法来自动执行此过程。 – KMoraz 2012-02-21 22:38:14
我们使用每日构建进行测试,并且CI构建仅告知开发者是否已破坏构建。这样就不需要将工作项目链接到CI构建,所以它们被自动删除,并且我们每天只有一个或两个构建(而不是20-30)生成标签。 – 2012-02-25 19:54:14
TFS将这些标签追加到全局列表中,以便可以将工作项链接到特定的构建版。从理论上讲,您不应该从全局列表中“清理”构建列表,因为您将留下任何正在使用这些列表项作为值的工作项处于无效状态。
还有其他列表随着时间的推移会变得臃肿,比如“分配给”用户列表。任何曾经是该团队项目有效用户的人都将出现在该列表中,原因与上述相同。如果您删除用户,则会使该用户的工作项目处于无效状态。尝试将变更集与无效工作项目相关联或对其执行其他操作时,您会收到错误消息。
长项目列表不应该有任何性能问题。从下拉列表中选择一个巨大的列表会让人讨厌......但这就是TFS野兽的本质。它可以保存各种信息,以便随着时间推移衡量指标。
查看Tfs_Analysis多维数据集或用于构建的事务表。你会发现你曾经运行的每一个构建的数据行。 (TFS 2008在删除构建时从其事务表中删除了行...在TFS 2010中保留了数据并在数据库中设置了“IsDeleted”标志,因此数据永远保留在那里)
我不知道如何刷新旧版本 - 我们也有一个无用的臃肿列表,其中包括数百个已删除的版本,这些版本使得像“发现”这样的字段无法使用。
但是,由于您可能不需要/不需要他们的标签,因此可以缓解CI的大部分积聚。每个构建定义可以被编辑,以在构建开始时停止标记源代码控制。 (我不能提供完整的说明,因为我现在离我的电脑很远)
- 1. asp.net /我想清除文本框历史
- 2. 清除铬devtools历史
- 3. 清除命令历史
- 4. 用jQuery清除表单历史记录
- 5. 从Nuget中删除所有历史版本的软件包
- 6. 清除Mongo Shell中的历史记录
- 7. 在Python中清除终端(和历史!)
- 8. 如何管理WSS 2.0中的列表版本历史记录
- 9. 文章版本/历史
- 10. 尽管历史大小设置为0和清除历史
- 11. 清理git历史
- 12. iOS清除UIWebView的历史记录
- 13. 如何清除堆栈历史记录?
- 14. 清除浏览器历史记录
- 15. Android:清除活动历史记录
- 16. 如何清除Docker任务历史
- 17. TinyMCE setContent不清除撤消历史
- 18. 清除/禁用窗体历史记录
- 19. Sharepoint。显示列表项目版本历史记录对话框
- 20. SQL:从历史表
- 21. 如何从IntelliJ中删除版本控制日志(历史记录)
- 22. MySQL - 从历史记录表中获取历史“快照”
- 23. 通过表单提交阻止或清除历史记录
- 24. TFS获取最新版本历史
- 25. Android平台版本的历史分布
- 26. 回到历史未损坏的版本?
- 27. TFS旧版本TFS变更集历史
- 28. 如何实现历史版本?
- 29. MOSS 2007版本历史查询
- 30. 用BFG清理git历史
是否想要删除/销毁旧版本或将其从全局列表中删除? – 2012-02-22 02:24:42
@DuatLe只是删除。 – KMoraz 2012-02-22 06:56:04