使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略
2015-12-02 22:30
267 查看
TFS的代码签入策略与IDE工具紧密相关,例如Visual Studio中设置的签入策略,只会影响Visual Studio的团队资源管理器;如果需要在Eclipse的TEE中启用签入策略,你还需要在TEE中单独设置。(不仅如此,在数据存储上,二者也不一样,通过查询数控,我们发现TEE的签入策略存储在Collection数据库的表tbl_PropertyValue中,VS则不是)。
如果需要统计或查询哪些团队项目启用了什么签入策略,我们可以通过报表或者API的方式编写脚本输出TFS的签入策略设置。这里我主要描述如何用API获取Eclipse中的签入策略。
如同前面描述的两个IDE工具的不一样,通过API获取签入策略时,你会发现使用.NET获取的签入策略只包含Visual Studio中设置的策略;使用Java SDK API获取的签入策略,则只包含TEE中设置的签入策略。
我在之前写过一篇博客“TFS Java SDK使用指南”,里面描写了如何使用Java ADK,这里的操作步骤大体相似,对于相同的步骤不再赘述。
1. 下载Microsoft Team Explorer Everywhere 2015 中包含的TFS SDK (TFS-SDK-14.0.1.zip) https://www.microsoft.com/en-us/download/details.aspx?id=47727
2. 将代码解压缩到本地磁盘中,使用Eclipse导入示例代码中的任何一个项目,例如我导入了com.microsoft.tfs.sdk.samples.snippets
3. 建SDK中解压的文件都复制到项目的根目录下,以便后续利用
4. 设置Java项目的引用类库,指定为上面步骤中复制的SDK文件
5. 根据自己的TFS服务器配置,修改Java项目中的配置文件
6. 增加一个Java类,例如我的名称是EnumerateCheckinPolicies,建下面的代码复制到文件中:
7. 运行测试,你会看到TEE中设置的签入策略,如下图:
http://www.cnblogs.com/danzhang/ ALM MVP 张洪君
如果需要统计或查询哪些团队项目启用了什么签入策略,我们可以通过报表或者API的方式编写脚本输出TFS的签入策略设置。这里我主要描述如何用API获取Eclipse中的签入策略。
如同前面描述的两个IDE工具的不一样,通过API获取签入策略时,你会发现使用.NET获取的签入策略只包含Visual Studio中设置的策略;使用Java SDK API获取的签入策略,则只包含TEE中设置的签入策略。
我在之前写过一篇博客“TFS Java SDK使用指南”,里面描写了如何使用Java ADK,这里的操作步骤大体相似,对于相同的步骤不再赘述。
1. 下载Microsoft Team Explorer Everywhere 2015 中包含的TFS SDK (TFS-SDK-14.0.1.zip) https://www.microsoft.com/en-us/download/details.aspx?id=47727
2. 将代码解压缩到本地磁盘中,使用Eclipse导入示例代码中的任何一个项目,例如我导入了com.microsoft.tfs.sdk.samples.snippets
3. 建SDK中解压的文件都复制到项目的根目录下,以便后续利用
4. 设置Java项目的引用类库,指定为上面步骤中复制的SDK文件
5. 根据自己的TFS服务器配置,修改Java项目中的配置文件
6. 增加一个Java类,例如我的名称是EnumerateCheckinPolicies,建下面的代码复制到文件中:
package com.microsoft.tfs.sdk.samples.snippets; import com.microsoft.tfs.core.TFSTeamProjectCollection; import com.microsoft.tfs.core.checkinpolicies.PolicyDefinition; import com.microsoft.tfs.core.clients.versioncontrol.TeamProject; import com.microsoft.tfs.core.clients.versioncontrol.VersionControlClient; import com.microsoft.tfs.core.clients.versioncontrol.soapextensions.Item; public class EnumerateCheckinPolicies { public static void main(final String[] args) { TFSTeamProjectCollection tpc = SnippetSettings.connectToTFS(); VersionControlClient vcc= tpc.getVersionControlClient(); Item item= vcc.getItem("$/"+SnippetSettings.PROJECT_NAME); TeamProject tp=new TeamProject(item,vcc); String projectName=tp.getName(); PolicyDefinition[] ps= tp.getCheckinPolicies(); System.out.println(projectName + ":"); for(PolicyDefinition pd:ps) { System.out.println(pd.getType().getName()); } } } |
http://www.cnblogs.com/danzhang/ ALM MVP 张洪君
相关文章推荐
- NoSQL选型
- Spring+WebSocket+SockJS实现实时聊天
- JAVA——实现多线程
- 03-加入苹果开发者计划
- Android存储访问与Environment类
- iOS委托理解
- 再来一个学历重要性讨论——现实版
- 《你的知识需要管理》——田志刚
- IOS多线程
- 小学四则运算APP 第二阶段冲刺-第三天
- cocos2d-js添加360广告联盟插屏(通过jsb反射机制)
- 一直误解的memset函数
- 汇编语言---GCC内联汇编
- 《leetCode》:Partition List
- 详解C#中的反射
- CODE注意事项
- java 物理分页和逻辑分页
- WPF使用后台C#代码创建Grid
- 详解C#中的反射(转载)
- MySQL性能优化的最佳经验,随时补充