使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略

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中解压的文件都复制到项目的根目录下,以便后续利用

使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略

 

4. 设置Java项目的引用类库,指定为上面步骤中复制的SDK文件

使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略

 

使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略

 

5. 根据自己的TFS服务器配置,修改Java项目中的配置文件

使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略

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());
        }
    }
}

7. 运行测试,你会看到TEE中设置的签入策略,如下图:

使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略

 

http://www.cnblogs.com/danzhang/  ALM MVP 张洪君

上一篇:HDU4276 The Ghost Blows Light(树形DP+背包)


下一篇:Android 文件存放路径【转】