PowerShell 2.0 实践(十一)管理 TFS 2010 (2)
2010-10-08 21:26
453 查看
上一次我们熟悉了一下TFS 2010的整体架构,搭建了x64平台下的开发、测试环境。本次开始我们来深入研究一下TFS 2010的对象模型,TFS 2010的PowerShell扩展也是建立在其对象模型基础之上。
测试脚本下载
本系列所有脚本均在Windows Server 2008 R2 DataCenter (PowerShell 2.0) + PowerGUI Script Editor Free Edition x64中测试通过。
TFS 2010系列使用了TFS 2010 Ultimate x64、TFS 2010 Power Tools April 2010。
转载请注明出处:/article/5136321.html
TFS 2010的对象模型分为两大部分:服务器端和客户端
TFS 2010 API位于%VS2010 Root%\Common7\IDE\ReferenceAssemblies\v2.0:
Team Project Collections
Team Project Collections是TFS 2010中新添加的一个概念,指团队项目的集合。在连接TFS 2010时可以看到:
一个Team Project Collection可以包含很多个Team Project,类似于解决方案与项目之间的一对多关系。
TFS Farms
TFS场的概念有点类似于SharePoint服务器场的概念,是一个巨大的容器。TFS 2010终于允许被安装在域控制器上了,对开发人员来说是一个福音,因为开发机器往往是AD + SQL Server + VS + TFS + …,All in one。
TFS Farms更改内容如下:
4.1、对TFS应用层的网络负载平衡支持
4.2、数据层的平面型扩容
TFS 2010的数据库
5.1、Tfs_Configuration:保存了所有的配置信息、Team Project Collections列表等;
5.2、Tfs_Warehouse:保存了所有的报表数据;
5.3、其他数据库是每创建一个Team Project Collection就添加一个数据库。
注意,不要手动去修改TFS数据库中的内容,理解其包含的表和字段可以更好的理解TFS 2010体系结构。
说了这么多理论,最后以一个简单的PowerShell命令来结束今天的研究:
获取当前TFS 2010上的工作区(Workspace):
工作区相当于连接TFS 2010的客户端。
首先要添加程序集,就像一般项目添加引用一样,
Clear-Host
# Load client OM assembly.
[Reflection.Assembly]::Load("Microsoft.TeamFoundation.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
$url
=
New-Object
-TypeName
Uri
-ArgumentList
"http://brookspcnb:8080/tfs/DefaultCollection"
$project
=
New-Object
-TypeName
Microsoft.TeamFoundation.Client.TfsTeamProjectCollection
-ArgumentList
$url
Get-TfsWorkspace
-Server
$project
运行结果:
小结:
本次主要研究了TFS 2010的客户端模型的整体架构以及TFS 2010新增的一些概念和特性,最终以一个实例结束了这次测试。后续篇章会继续深入研究TFS 2010对象模型的细节,敬请关注、探讨。
测试脚本下载
本系列所有脚本均在Windows Server 2008 R2 DataCenter (PowerShell 2.0) + PowerGUI Script Editor Free Edition x64中测试通过。
TFS 2010系列使用了TFS 2010 Ultimate x64、TFS 2010 Power Tools April 2010。
转载请注明出处:/article/5136321.html
TFS 2010的对象模型分为两大部分:服务器端和客户端
TFS 2010 API位于%VS2010 Root%\Common7\IDE\ReferenceAssemblies\v2.0:
Team Project Collections
Team Project Collections是TFS 2010中新添加的一个概念,指团队项目的集合。在连接TFS 2010时可以看到:
一个Team Project Collection可以包含很多个Team Project,类似于解决方案与项目之间的一对多关系。
TFS Farms
TFS场的概念有点类似于SharePoint服务器场的概念,是一个巨大的容器。TFS 2010终于允许被安装在域控制器上了,对开发人员来说是一个福音,因为开发机器往往是AD + SQL Server + VS + TFS + …,All in one。
TFS Farms更改内容如下:
4.1、对TFS应用层的网络负载平衡支持
4.2、数据层的平面型扩容
TFS 2010的数据库
5.1、Tfs_Configuration:保存了所有的配置信息、Team Project Collections列表等;
5.2、Tfs_Warehouse:保存了所有的报表数据;
5.3、其他数据库是每创建一个Team Project Collection就添加一个数据库。
注意,不要手动去修改TFS数据库中的内容,理解其包含的表和字段可以更好的理解TFS 2010体系结构。
说了这么多理论,最后以一个简单的PowerShell命令来结束今天的研究:
获取当前TFS 2010上的工作区(Workspace):
工作区相当于连接TFS 2010的客户端。
首先要添加程序集,就像一般项目添加引用一样,
Clear-Host
# Load client OM assembly.
[Reflection.Assembly]::Load("Microsoft.TeamFoundation.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
$url
=
New-Object
-TypeName
Uri
-ArgumentList
"http://brookspcnb:8080/tfs/DefaultCollection"
$project
=
New-Object
-TypeName
Microsoft.TeamFoundation.Client.TfsTeamProjectCollection
-ArgumentList
$url
Get-TfsWorkspace
-Server
$project
运行结果:
小结:
本次主要研究了TFS 2010的客户端模型的整体架构以及TFS 2010新增的一些概念和特性,最终以一个实例结束了这次测试。后续篇章会继续深入研究TFS 2010对象模型的细节,敬请关注、探讨。
相关文章推荐
- PowerShell 2.0 实践(十一)管理 TFS 2010 (2)
- PowerShell 2.0 实践(十三)管理 TFS 2010(3)
- PowerShell 2.0实践(十)管理TFS 2010 (1)
- PowerShell 2.0实践(十)管理TFS 2010 (1)
- PowerShell 2.0 实践(十三)管理 TFS 2010(3)
- PowerShell 2.0 实践(五)管理Windows注册表
- PowerShell 2.0 实践(七)管理活动目录(上)
- PowerShell 2.0 实践(十二)管理 SQL Server 2008 R2(1)
- PowerShell 2.0 实践(四)管理Windows进程
- PowerShell 2.0 实践(五)管理Windows注册表
- PowerShell 2.0 实践(四)管理Windows进程
- PowerShell 2.0 实践(五)管理Windows注册表
- PowerShell 2.0 实践(七)管理活动目录(上)
- PowerShell 2.0 实践(九)管理活动目录(下)
- PowerShell 2.0 实践(六)管理Windows日志
- PowerShell 2.0 实践(九)管理活动目录(下)
- PowerShell 2.0 实践(八)管理活动目录(中)
- PowerShell 2.0 实践(八)管理活动目录(中)
- PowerShell 2.0 实践(十四)管理 SQL Server 2008 R2(2)
- PowerShell 2.0 实践(六)管理Windows日志