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 张洪君

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

  • 相关阅读:
    小程序接入第三方ui库(组件库)
    vue仿微信网页版|vue+web端聊天室|仿微信客户端vue版
    Java 开发环境配置
    那么多 Java 版本,如何选择合适的版本
    你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问
    JavaScript HTML DOM EventListener addEventListener() 方法
    Vue2.0史上最全入坑教程(上)—— 搭建Vue脚手架(vue-cli)
    使用 Fetch
    CSS3中steps()动画的详解
    MYSQL常用命令
  • 原文地址:https://www.cnblogs.com/danzhang/p/12596182.html
Copyright © 2011-2022 走看看