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,建下面的代码复制到文件中:

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中设置的签入策略,如下图:

 

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

使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略的更多相关文章

  1. TFS 2015服务端安装与客户端签入项目步骤

    一.参考如下3篇文章搭建TFS2015环境 1.参考文章如下: TFS 2015(Visual Studio Team Foundation Server)的下载和安装http://www.cnblo ...

  2. Visual Studio 2015 与GitLab 团队项目与管理【2】

    前一篇介绍了Git服务器的搭建,我采用的是CentOS7-64位系统,git版本管理使用的是GitLab,创建管理员密码后进入页面. 创建Users,需要记住Username和邮箱,初始密码可以由管理 ...

  3. Team Foundation Server 2015使用教程--团队项目删除

  4. Team Foundation Server 2015使用教程--团队项目创建

  5. 【转】什麼是 Team Explorer Everywhere 2010 ?TFS 專用的 Eclipse 整合套件的安裝與設定

    前言- 大家都知道 版本管控是一件很重要的事情!而且也知道分別有 VSS , SVN , TFS 等- 多數人都會覺得, .NET 的開發工具要用 VSS . TFS .SVN 而 Java 的 Ec ...

  6. 使用高德地图SDK获取定位信息

    使用高德地图SDK获取定位信息 第一步: 在高德官网下载SDK,如我这里需要获取定位信息,故仅下载"定位功能" 第二步: 注册成为开发者,并创建应用获取相应的key.其中,在使用A ...

  7. 用百度SDK获取地理位置和天气信息

    以下实现通过百度SDK获取地理位置和天气信息,请參考title=android-locsdk/guide/v5-0">百度开发文档 1. 在相关下载最新的库文件.将so文件的压缩文件解 ...

  8. 通过摄像机视频设备或者流媒体服务器SDK获取到数据转换成RTMP流实现网页/手机微信播放

    写这篇博客主要是为了给新入门的流媒体开发者解惑,现在看到各种开发者的需求:网页播放RTSP摄像机.微信播放RTSP摄像机.网页播放摄像机SDK输出的视频流.网页播放第三方流媒体平台输出的视频流.包括G ...

  9. 高德SDK获取到的坐标转换为GPS真实坐标方法,Java版

    发现高德SDK不提供高德的坐标转GPS坐标(GCJ_02转WGS_84),下面是一份Java版的 /**************************** 文件名:GCJ2WGS.java 创建时间 ...

随机推荐

  1. Tensorflow笔记——神经网络图像识别(四)搭建模块化的神经网络八股(正则化,指数衰减学习率,滑动平均等优化)

    实战案例: 数据X[x0,x1]为正太分布随机点, 标注Y_,当x0*x0+x1*x1<2时,y_=1(红),否则y_=0(蓝)  建立三个.py文件 1.  generateds.py生成数据 ...

  2. 【HDU】4352 XHXJ's LIS(数位dp+状压)

    题目 传送门:QWQ 分析 数位dp 状压一下现在的$ O(nlogn) $的$ LIS $的二分数组 数据小,所以更新时直接暴力不用二分了. 代码 #include <bits/stdc++. ...

  3. icape3 的使用

    在FPGA中,有时需要使用用户代码重配置FPGA,配置的内容可以是flash或者是其他的来源这样FPGA的启动模式有关,在本实验中配置文件是存放在flash中.实际的操作步骤如下: 1:生成一个工程, ...

  4. rm 递归删除目录下某一类型文件

    命令:find -name "*.js.map" | xargs rm -f 解释:find -name "*.js.map" 可以查到当前目录下(包括子目录, ...

  5. SpringBoot入门(2)

    一.上一篇 上一篇最后说到,可以把启动类放到非上级目录“@Componentscan这个注解后面指定扫描的包名(value=“com.zbb”)”,这里的value是一个数组,我们可以写多个目录,进行 ...

  6. leetcode917

    class Solution { public: string reverseOnlyLetters(string S) { int len = S.length(); queue<char&g ...

  7. TNS:no listener error in Oracle XE after changing computer name

    This morning at work when trying to log on to my computer I noticed not my username on login screen ...

  8. js 判断空数组,空对象!

    var attr1 = [ ]; var obj1 = { }; console.log(isEmpty(attr1)); console.log(isEmpty(obj1)); function i ...

  9. UNITY 中List.Sort的BUG

    List<int> lst = new List<int>(); lst.Add(); lst.Add(); lst.Add(); lst.Add(); lst.Add(); ...

  10. rdd去重

    a=[[1,2,3,2,3,4],[3,4,5,6,7,5,3,2]]b=sc.parallelize(a) d=b.flatMap(lambda x:x)  #铺平 ,形成一个rdd e=d.dis ...