一、背景:        

公司已使用tfs2010很长时间,目前随着公司的发展,项目越来越少,而产品越来越多,采用的开发模式,也逐渐从瀑布式、迭代式转向敏捷开发。为了更好的支持产品研发,决定将tfs2010升级至tfs2013,目前已有200多G的数据量,升级时间也不是太长。

、升级方式:

       将tfs2010的sql2008数据库进行备份,tfs2013和sql2012安装在另一台全新的服务器上,将sql2008还原至新服务器上,然后再在新服务器上配置tfs应用层,最后通过tfs命令完成各种更新及配置操作。本指南将分两部分进行说明:1.TFS数据库及应用层的迁移   2.TFS的各项配置及更新。 (升级过程其实很简单,就是整个研究过程比较曲折,为了减少大家的时间,少走弯路,特编制本指南,算是提升大家的工作效率)

三、系统环境:

      TFS2010(旧):winserver2008 r2  、sql2008、tfs2010 sp1

TFS2013(新):winserver2008r2、sql2012、tfs2013

      四、升级步骤:

      1、准备工作

      (1)tfs2010中所有人员都不能有挂起操作,要么签入要么撤销,确保升级后的内容一致。

(2)所有工作项能处理的尽量处于关闭状态

(3)在新服务器上完成tfs2013和sql2012的安装(网上很多安装过程的说明,此处不单独说明)

     2、备份TFS2010

        将TFS2010所有文件备份出来,拷贝到TFS2013服务器上

     3、还原TFS2010

        在sql2012数据库中,还原备份的tfs2010数据库,在还原过程中请注意目录权限设置,这个问题困难了我一两天。 一定要把tfs2010备份数据库所在目录设置成everyone读写,这样在还原时,sql2012才能读取到tfs2010备份。

     4、应用层配置

        在TFS2013管理控制台上,点击根节点,在右侧界面点击“删除功能”,即可重新进行配置。在配置时选择“升级”即可。在升级过程中选择tfs2010config数据库即可。

    5、账号重建

       在完成应用层配置后,我们必须在tfs2013服务器上创建一套与tfs2010服务器上一样的访问账号。创建完后,我们需要使用tfsconfig  identities  命令进行账号列表的查看及校验,并加上/change 命令进行账号的转化。

TFSConfig Identities [/change /fromdomain:DomainName1 /todomain:DomainName2 [/account:AccountName] [/toaccount:AccountName]] [/sqlInstance:ServerName /databaseName:DatabaseName]              [/account:AccountName] [/usesqlalwayson]

    6、配置新功能

       tfs2013新增了很多新功能,这些功能都是基于过程模板,如果要在tfs2010老项目上启用新功能,必须对过程模板进行修改定制并调试修改。

主要使用witadmin    exportcategories   和importcategories命令,以及修改过程模板中的WorkItem Tracking并且逐个导入需要修改的项目中,另外还要使用过程模板导入命令进行最后的更新:

      witadmin importprocessconfig /collection:CollectionURL [/p:ProjectName] /f:FileName [/e:encoding] [/v]
问题1:在导入过程中,如果出现以下错误:
TF30170:   Microsoft.ProjectCreationWizard.TestManagement
C:\Windows\Microsoft.NET\Framework\v4.0.30319
则执行命令即可
ngen uninstall Microsoft.TeamFoundation.TestManagement.Client
ngen uninstall Microsoft.TeamFoundation.TestManagement.Common
问题2:TF400498: 尚未指定积压工作 (backlog)和 迭代路径
在网站里面启用,就要设置迭代和区域(选中即可)
 

  在管理控制台中,修改各个url的访问地址,改成tfs2013新服务器名即可。最后进行各个功能的测试及检查,根据具体报错进行修改。

参考资料:
https://www.visualstudio.com/zh-cn/docs/setup-admin/tfs/upgrade/upgrade-2013/upgrade-2013-requirements
https://msdn.microsoft.com/zh-cn/zh-us/library/ms252516(v=vs.100).aspx
https://msdn.microsoft.com/zh-cn/library/ms194972(v=vs.120).aspx
https://msdn.microsoft.com/zh-cn/library/jj920163(v=vs.120).aspx
https://www.visualstudio.com/zh-cn/docs/work/customize/add-features-manually#update-processconfig
https://msdn.microsoft.com/zh-tw/library/ms404883(v=vs.120).aspx

TFS2010升级至TFS2013完全指南的更多相关文章

  1. TFS2010升级至TFS2013完全指南(更换服务器)

    一.背景:         公司已使用tfs2010很长时间,目前随着公司的发展,项目越来越少,而产品越来越多,采用的开发模式,也逐渐从瀑布式.迭代式转向敏捷开发.为了更好的支持产品研发,决定将tfs ...

  2. TFS2013 升级至TFS2015及项目的创建

    TFS2015已发布想体验下新特性 由于现有数据库已经是SQLSERVER2012 SP1 开发工具VS2013 都符合升级要求 现在体验下吧 1.先下载TFS2015 运行安装向导一路NEXT 直至 ...

  3. 企业IT管理员IE11升级指南【10】—— 如何阻止IE11的安装

    企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...

  4. 使用VS2013、TFS2013和Git进行分布式团队协作

    题记:呵呵,首先声明,题目起的有点大,其实我只想介绍下VS2013和TFS2013新加入的Git功能,也不是在VS中使用Git的详细向导(以后有空再详细分享给大家).这篇文章虽然在写这篇文章<V ...

  5. App Store 审核指南(最新)

    简介 App 正在改变世界,丰富人们的生活,并为像您一样的开发者提供前所未有的创新机会.因此,App Store 已成长为一个激动人心且充满活力的生态系统,正为数百万的开发者和超过十亿的用户提供服务. ...

  6. 苹果应用商店AppStore审核规则指南

    http://www.zesmob.com/blog/40161.html 新应用上架苹果AppStore或重大版本更新时,往往会被拒多次,造成审核不通过的原因,主要是因为对苹果应用商店AppStor ...

  7. Kafka平滑滚动升级2.4.0指南

    今天测试了下kafka从2.0.0滚动升级至2.4.0,下面做一下记录.这个链接是Kafka官网对升级2.4.0的指南,可以参考  http://kafka.apache.org/24/documen ...

  8. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

  9. UE4新手之编程指南

    虚幻引擎4为程序员提供了两套工具集,可共同使用来加速开发的工作流程. 新的游戏类.Slate和Canvas用户接口元素以及编辑器功能可以使用C++语言来编写,并且在使用Visual Studio 或 ...

随机推荐

  1. MySQL 5.5.x配置文件详解

    MySQL 5.5.x my.cnf参数配置优化详解 一直有耳闻MySQL5.5的性能非常NB,所以近期打算测试一下,方便的时候就把bbs.kaoyan.com升级到这个版本的数据库.今天正好看到一篇 ...

  2. LWIP裸机环境下实现TCP与UDP通讯

    前面移植了LWIP,并且简单的实用了DHCP的功能,今天来使用一下实际的数据通讯的功能 首先是实现TCP客户端,我先上代码 #ifndef __TCP_CLIENT_H_ #define __TCP_ ...

  3. NSURLRequest POST方式请求服务器示例

    http://lizhuang.iteye.com/blog/1833297 1.  准备阶段 NSString *urlString = [NSString stringWithFormat:@&q ...

  4. WPF 制作电子相册浏览器

    周末的时候,闲着无聊,做了一个电子相册浏览器.比较简单.界面如下: 主要部分代码如下: MainWindow.xaml <local:HeaderedWindow x:Class="P ...

  5. 关于中值滤波算法,以及C语言实现(转)

    源:关于中值滤波算法,以及C语言实现 1.什么是中值滤波? 中值滤波是对一个滑动窗口内的诸像素灰度值排序,用其中值代替窗口中心象素的原来灰度值,它是一种非线性的图像平滑法,它对脉冲干扰级椒盐噪声的抑制 ...

  6. js-权威指南学习笔记8

    第8章 函数 1.参数有形参和实参的区别,形参相当于函数中定义的变量,实参是在运行时的函数调用时传入的参数. 2.函数表达式可以包含名称,这在递归时很有用. 3.函数定义表达式特别适合用来定义那些只会 ...

  7. 命名空间“Microsoft.AspNet”中不存在类型或命名空间名“Mvc”

    问题: 错误 CS0234 命名空间"Microsoft.AspNet"中不存在类型或命名空间名"Mvc"(是否缺少程序集引用?) 解决方案: 打开文件夹 Us ...

  8. 使用PHP和HTML5 FormData实现无刷新文件上传教程

    无刷新文件上传是一个常见而又有点复杂的问题,常见的解决方案是构造 iframe 方式实现. 在 HTML5 中提供了一个 FormData 对象 API,通过 FormData 可以方便地构造一个表单 ...

  9. ArcGIS Server的切图原理深入(转载)

    http://forum.osgearth.org/template/NamlServlet.jtp?macro=search_page&node=2174485&query=arcg ...

  10. CentOS-6.6下Tomcat-7.0安装与配置(Linux)

    CentOS-6.6下Tomcat-7.0安装与配置(Linux) 一.认识tomcat Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目, ...