升级到 TFS 2010 后缺少项的标签或不正确地执行合并操作

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 2135068
本文已归档。它按“原样”提供,并且不再更新。
症状
到 TFS 2010 升级后, 一个或多个以下症状可能会出现:
  • 在升级前创建的 标签缺少文件或文件夹。 标签可能完全为 空。
  • Visual Studio 中的将合并向导不会显示为一个给定的源路径的所有有效的合并目标 / 分支
  • 在合并,合并候选显示更改的已合并之前升级。


原因
如果已升级到 2010年标签被应用到在某一时刻的历史记录中被重命名的项的 ,该标签将丢失其内容如果标记的版本不是发生在重命名的确切的变更集。 这些缺少的项是项目 id 的 2010年版本.升级过程中的正确翻译结果

一个分支上已被重命名多个时间或有占用其命名空间 (通过添加或删除组合) 的多个其他项目的任何项目将会丢失它们与其他分支上相应的项之间的关系。 如果已重命名该项目是合并操作 (分支根) 的根,缺失的关系将导致在合并向导中的一个或多个合并目标的缺勤。 如果通过命令行完成合并,将返回一条消息,指出没有任何合并关系。 重命名的根下的项目的合并操作,合并向导将正确显示合并的目标。 但是,合并候选将包括之前升级,任何新的候选对象自上次合并之后添加的已合并的变更集。 如果不放弃这些候选,结果将是其他的合并的文件和其他的合并冲突。 这些丢失的关系是项目 id 的 2010年版本.升级过程中的正确翻译结果
解决方案
缺失项目的标签,请访问以下网站与 Microsoft 技术支持联系寻求帮助:


若要恢复丢失的合并目标,在合并向导的 baseless 合并 必须执行。 若要执行此操作从每个缺少的合并目标的命令行运行以下格式的合并:

tf 合并 <源分支< >目标分支> / baseless
此合并操作将会发生任何冲突必须已解决,然后可以将所做的更改签入。 合并目标合并已被签入之后,将可以从合并向导在 Visual Studio。

使用额外的合并候选解决该问题在/ 放弃应使用 选项。 若要执行此操作从命令行运行以下格式的一个合并:

tf 合并 <源分支< >目标分支> /r /discard:CXXX~ CYYY

在此的示例XXXYYY若要放弃更改的范围 代表的变更集 id。 此合并已被签入之后,不需要的候选项将不再显示为以后合并。 还要注意,由于合并算法 TFS 2010 年中的改进的源和目标分支中删除的项将导致在要合并的更改。 在这种情况下,则最好不放弃该变更集,以便正确地更新合并历史记录。 

更多信息
要解决此问题还没有升级到 2010年的数据库,现在已释放 A 修补程序。 此修补程序是可从 Microsoft 下载中心 (http://go.microsoft.com/fwlink/?LinkId=198172),并且必须安装此处所述:

后 TFS 2010 安装程序已完成,但配置开始服务器之前,应该应用此修补程序。 安装结束时将显示成功屏幕指示完成安装。 通常情况下,用户可以继续配置,但通过清除取消该进程必须在这种情况下,启动团队基础服务器配置工具框 (位于左下角)。 此操作将使该取消按钮。 退出安装程序后,可执行文件的修补程序可以运行更新升级步骤。 从安装该修复程序后,必须重新启动 TFS 管理控制台将团队基础服务器上的命令将启动菜单中。 选择在应用程序层节点将显示配置链接,在主面板,用于完成升级过程。


状态
Microsoft 已经确认这是一个问题,在 Microsoft 产品中所列的"适用于"一节。
TFS 团队基础服务器升级合并标签分支丢失

属性

文章 ID:2135068 - 上次审阅时间:12/12/2015 08:52:33 - 修订版本: 5.0

Microsoft Visual Studio Team Foundation Server 2010

  • kbnosurvey kbarchive kbqfe kbhotfixserver kbsurveynew kbexpertiseadvanced kbmt KB2135068 KbMtzh
反馈