TFS代码管理
     分类:环境搭建     有: 0 条评论

TFS代码管理

     分类:环境搭建     有: 0 条评论

TFS(Team Foundation Server)是一种代码管理工具,工作原理类似于SVN。

安装TFS还是比较简单的,在Windows Server服务器环境下安装是很简单的,TFS依赖SQL数据库,一般SQL2014及以上版本都需要.NET 4.5以上的版本。所以最好先安装.NET 4.5,不然一定会报错的。


安装

Microsoft .NET Framework 4
https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=17718

Microsoft .NET Framework 4.5
https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=30653


SQL 2014 下载
https://www.microsoft.com/zh-CN/download/details.aspx?id=42299
选择有Management的64位版本,如:SQLManagementStudio_x64_CHS.exe


TFS 2015 下载
https://www.microsoft.com/zh-cn/download/details.aspx?id=48260

参考:http://m.blog.csdn.net/article/details?id=41447989

安装完TFS后按提示简单配置之后就可以使用了,Web管理界面是:localhost:8080


计划备份

强烈建议大家用TFS自带的备份功能进行备份,用Windows做服务器翻车只是迟早的问题,没有备份后悔都来不及。

设置计划备份时如果报错,使用的Administrator用户,依然提示:“网络路径没有权限”之类的,这个不知道什么原因,死活解决不了,用普通账户(有读写那个网络共享文件夹的权限)就能正常使用了。


异地迁移

难免服务器出现问题或者需要数据迁移,在源服务器遭病毒破坏无法使用时,要在新的服务器上重新部署,在安装好TFS和SQL Server之后,直接用TFS还原在异地备份的数据(这种方法会出现一些棘手的问题,不知道还有没有更好的方法),恢复之后发现无法登陆,要修改服务器主机名和源服务器的主机名一样(貌似是要校验源主机名的)。

重启之后应该是只可以用win管理员administrator登陆的;其他用户都无法登陆,这时在全局权限里的管理员组添加用户就能登陆了;但是这样每一个人都可以看到所有的项目,他本身的项目是已经打了勾的了,这个是来自于第二层的权限认证。目前我还没有找到怎么让普通用户能登陆的办法。

接着在VS中连接TFS服务器(一般是没什么的问题的),但是,如果你在使用源TFS后,你自己的电脑的主机名改过了;之后源TFS出了问题才还原到新主机上的;发现会提示“创建工作区映射”,这是因为数据库中的主机名多对应的工作空间和你当前主机名不同,无法确保是不是同一个项目。这时就随便映射一下新的工作空间,然后在数据库中查询改主机名,可以看到有一个计算机的ID(复制下来),把新的记录删掉,把ID替换掉旧的,VS就可以映射原来的工作空间了。

这里不得不吐槽TFS是奇葩的存在,虽然我第一次用TFS,安装是很简单,但是各种设置简直奇葩再奇葩,遇到问题,基本找不到资料;官方的问题完全就是敷衍式骗好评的网页;根本解决不了问题;需要有极大的耐心来解决。貌似所有项目是共用一个版本库的,自己没有自己的代码历史版本,只有全局的版本,差git十万八千里(为什么这么说呢,等服务器宕机一次你就明白有多难整了),原理有点像SVN,一旦宕机其他人就完全没法工作了。一大帮开发人员围着你问什么时候弄好@_@~,那简直想死的心都有了。

留一些网址,有空的时候研究一下:
https://support.microsoft.com/zh-cn/help/909264/naming-conventions-in-active-directory-for-computers-domains-sites-and-ous
https://msdn.microsoft.com/zh-cn/library/ms252458(d=printer).aspx
https://msdn.microsoft.com/zh-cn/library/ms404869.aspx
https://msdn.microsoft.com/zh-cn/library/ms404883.aspx?f=255&MSPPError=-2147217396
https://msdn.microsoft.com/zh-cn/library/vs/alm/jj620932
http://developer.51cto.com/art/201010/229066.htm
http://blog.csdn.net/hrabeyond/article/details/7324611


(●゚ω゚●)