zoukankan      html  css  js  c++  java
  • 将团队项目迁移到另外一个团队项目集合中

    问题描述

    经常有客户问我:”在Azure DevOps Server中,如何将一个团队项目迁移到另外一个团队项目集合中?”

    简单的答案是:“目前版本不支持!”。

    这是目前全球用户关注度最高一条需求(https://developercommunity.visualstudio.com/idea/365365/make-it-possible-to-move-a-team-project-between-te-1.html),但是非常遗憾,微软产品组目前也解决不了这个问题。

    问题分析

    实际上,鉴于Azure DevOps Server (之前叫TFS)的设计,短时间内通过系统升级无法实现这样的功能。不能实现这个功能的原因有许多,但是其中最核心的一个是数据唯一性标志ID。

    在TFS系统,所有的工作项都具有一个唯一的ID值,这个ID值是一个自动增量加1的序列号,例如新增一条需求的ID为1001,之后新建一个Bug的工作项ID就是1002。在同一个团队项目集合中,这个工作项ID的序列号是共享的,也就是说在第一个团队项目中新增了一个工作项,在第二个团队项目中新增的工作项ID也会自动加1。在不同的团队项目中,有可能都存在1001这样的工作项。如果我们在团队项目集合之间迁移团队项目,那么工作项数据将变得非常混乱。

    另外,由于传统的TFVC库也存在同样的问题,在同一个团队项目集合中,路径都是以美元符号$开头的,文件的路径格式为”$/团队项目名称/文件或文件夹路径“,如果我们在团队项目集合之间迁移团队项目,同样会让系统中的数据变得混乱不堪。

    再加上报表数据库tfs_warehouse中的数据结构的复杂性,使得这种迁移功能变得非常复杂,涉及数据的变更太多,几乎是一个无法完成的工作。

    所以,大家以后不要在问如何迁移团队项目的问题了。

    解决方案

    从上面的分析,我们可以看到这是一个无解的问题。

    但是,我们可以避免出现这样问题。为了避免在使用Azure DevOps Server的过程中出现需要迁移团队项目的问题,需要在使用之初对企业中的研发数据做好规划,按照一定的标准创建团队项目。例如,同一个产品线的信息系统存放到相同的团队项目集合中,相同研发团队的信息系统存放到同一个团队项目集合中;如果考虑到不会出现成千上万的团队项目,尽量使用默认的团队项目集合(DefaultCollection),避免使用新的团队项目集合。


    image

    ------------------------------------------------------------

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

    ------------------------------------------------------------

  • 相关阅读:
    POJ 3140 Contestants Division (树dp)
    POJ 3107 Godfather (树重心)
    POJ 1655 Balancing Act (树的重心)
    HDU 3534 Tree (经典树形dp)
    HDU 1561 The more, The Better (树形dp)
    HDU 1011 Starship Troopers (树dp)
    Light oj 1085
    Light oj 1013
    Light oj 1134
    FZU 2224 An exciting GCD problem(GCD种类预处理+树状数组维护)同hdu5869
  • 原文地址:https://www.cnblogs.com/danzhang/p/12596182.html
Copyright © 2011-2022 走看看