在Azure DevOps Server (TFS) 中修改团队项目名称
概述
【团队项目】:
在Azure DevOps Server (原名TFS)中,团队项目(Team Project)是一个最基本的数据组织容器,包含了一个团队或者信息系统中的所有信息,包括源代码、文档、需求、缺陷和持续集成等数据。同时,团队项目也是TFS中相关数据的权限隔离边界;在系统的默认配置中,不同人员登录TFS系统,会查看到不同团队项目的数据。在TFS系统的设计中,团队项目名称和用户访问TFS系统的方式有直接关系,例如,团队项目中代码库的远程地址中,就包含了团队项目的名称部分。
【修改名称】:
在使用TFS系统前,最好对所有团队项目的名称有一个整体的规划,避免由于改名导致许多未知的问题。但是,如果出现团队项目改名的需求时,我们需要首先了解改名对开发团队造成的影响,提前做好相应的规划。
团队项目改名会导致用户相关数据的变化,包括:
- 源代码版本库路径
- 工作项的URL路径
- 共享查询、个人查询路径
- 其他与团队项目名称相关的书
团队项目的名称可以多次修改,也可以重新改回原来的名称。但是在改名之前和之后,必须要通知你的开发团队,让大家做好相应的变更。一般情况下,尽量在非工作时间实施改名的工作,避免对开发团队的工作造成影响。
注意:从TFS 2015之后,系统才支持修改团队项目名称的功能,之前的版本并不支持这一功能。
修改团队项目之前
1. 你必须是项目管理员的权限,即,你的操作账户在项目管理员组的成员中
2. 由于修改团队项目会影响开发人员访问Azure DevOps Server,为避免修改团队项目造成数据丢失,在修改团队项目之前,需要通知开发团队将本地的代码变更提交到服务器。提交的数据主要包括:
- Git代码库中的修改
- TFVC代码库中的修改
- Excel 中的工作项
- Project 中的工作项
- PowerPoint 中的设计内容
修改团队项目名称
在团队项目的任何页面,点击“项目设置”按钮
‘
在项目设置页面,点击重命名

在弹出页面中,填写新的团队项目名称,并勾选“我了解重命名此项目的后果”,点击“重命名”按钮。

修改团队项目之后:对开发团队的影响
完成团队项目改名后,我们必须通知开发团队,对本地开发工具和访问方式做相应的修改,以便适应新的团队项目名称。这些变动主要是正对使用不同开发工具的团队成员,如果你的团队成员(例如需求人员)一直使用浏览器访问TFS系统,则变动不大。下面是开发团队需要做的相应调整:
1. 重新启动客户端:
开发工具在缓存中存储团队项目名称,如果重新启动开发工具,系统会自动清除缓存中的信息。重新打开开发工具并连接到Azure DevOps Server 后,系统会自动创建新缓存信息。如果在修改团队项目名称后,用户没有重新启动客户端程序,会导致推送到服务器的数据失败。当然,这里的客户端不包含浏览器,主要是指Visual Studio,Eclipse,Git client,Excel等工具,以及使用TFS客户端对象模型自定义的客户端工具。
2. 更新Git远程库:
如果你使用的团队项目中的Git 远程库,那么你需要更新所有连接到服务器本地库的配置。这是因为远程库的地址中包含了团队项目的名称,例如http://tfsserver/DefaultCollection/MyAgileTeam/_git/MyAgileTeam,其中的MyAgileTeam就是团队项目名称。
- 获取远程库的名称
在浏览器中,选择对应的Git库,选择克隆按钮,在弹出的窗口中,点击复制Git库远程地址的按钮

- 在Visual Studio 中,请参考下面的方式修改远程库地址
在Visual Studio 的团队资源管理器中打开之前克隆的git库:

选择设置按钮

选择存储库设置

选择远程库>编辑按钮

在弹出的窗口中,将上一步中复制的远程地址粘贴到这里,并确认完成操作。你就可以按照之前的操作更新本地代码库,并推送和拉取远程库的内容了。
- 在Git 客户端的命令行中更新远程库地址
如果你使用命令行方式和远程仓库同步数据,则可以参考下面的方式修改远程库地址:
打开命令行窗口,查看当前的远程库设置:
git remote –a

执行远程库修改命令
git remote set-url origin {URL_you_copied_from_the_remote_repo}

3. 更新TFVC 工作区
如果你使用服务器工作区的方式连接TFVC代码库,你只需要打开使用Visual Studio 或者Eclipse,打开源代码管理器之后,更新或者签入文件后,系统会在工具中自动更新你的团队项目名称。
常见问题
在Eclipse或者Visual Studio中连接TFVC异常,建议新建一个工作区,重新同步数据到新的映射目录中,如下图:


微软最有价值专家,DevOps MVP 张洪君 http://www.cnblogs.com/danzhang
--End--
(完)
在Azure DevOps Server (TFS) 中修改团队项目名称的更多相关文章
- 在Azure DevOps Server (TFS)中实现VUE项目的自动打包
概述 Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.由于它在数据绑定.页面展示和使用简单方面有很大的优势,逐渐被越来越多的前端开发团队使用.本文 ...
- 还原Azure DevOps Server (TFS)中误删除的生成流水线
流水线历史记录 DevOps Server流水线的历史记录有完善的版本日志,用户可以随时回退到修改过程中的任何一个版本,还能比较差异.这个历史记录功能可以和代码库中的版本控制媲美. 图一:生成历史记录 ...
- Azure DevOps Server (TFS) 代码库Repo管理培训
Repo是分布式代码库Git中的一个专用词,用于存储和管理开发团队中特定的源代码. 使用Git,可以协调整个团队的代码更改. 即使您只是一个开发人员,版本控制也可以帮助您在修复错误和开发新功能时保持井 ...
- Azure DevOps Server (TFS)中代码文件换行问题解决方案(Git)
之前写过一篇博客"探索TFS Git 库文件换行(CRLF)的处理方式",主要是针对TFVC代码库的. 下面这篇文章说明如何在TFS的Git库中处理代码换行的问题. 概述 在Azu ...
- 在Azure DevOps Server (TFS)的流水线中编译和测试Xcode移动应用(iPhone)
概述 Xcode是开发基于苹果macOS系统的桌面应用和移动应用的主要IDE工具.使用Azure DevOps Server (原名TFS)系统中的pipelines流水线功能,可以方便的集成Xcod ...
- 集成Azure DevOps Server(TFS) 与微软Teams
1.概述 Microsoft Teams是Office 365中团队协作的中心.将团队的所有聊天.会议.文件和应用程序放在一个位置.软件开发团队可以在一个专门的协作中心中即时访问他们所需的所有内容,T ...
- 在Azure DevOps Server (TFS 2019) 流水线传递参数
变量概述 在Azure DevOps Server的流水线中,变量是衔接不同任务和不通代理之间的桥梁,它可以使相对松散.各自独立的任务之间相关影响并共享数据.在流水线中使用变量,可以在各任务之间相互调 ...
- 在Windows操作系统的文件管理器中集成Azure DevOps Server (TFS)工具菜单
故事场景 使用过SVN的用户,都知道在Windows的文件夹上点击鼠标右键,就会弹出Tortoise SVN的操作菜单(俗称小乌龟).通过这个功能,用户不需要打开SVN工具,可以直接在Windows的 ...
- Azure DevOps Server (TFS) 修改工作项附件大小限制
1. 问题描述 当上传工作项附件时,系统提示"附件大小限制" 2.解决方案 2.1 默认设置 默认情况下,Azure DevOps Service和Team Foundation ...
随机推荐
- fieldOfView
fieldOfView 属性 fieldOfView:Number 语言版本: ActionScript 3.0 运行时版本: Flash Player 10, AIR 1.5 为三维视野指定一个 ...
- Linux网络编程---htons函数的使用
htons是将整型变量从主机字节顺序转变成网络字节顺序, 就是整数在地址空间存储方式变为高位字节存放在内存的低地址处. htonl就是把本机字节顺序转化为网络字节顺序所谓网络字节顺序(大尾顺序)就是指 ...
- css学习-css引入&css选择
一.引入css的方式,一共有4种,我们只需要掌握三种就可以了,@import的方法我们不做掌握 1.第一种引入的方法 <!--1.第一种引入css的方法--> <h1 style=& ...
- struts工作原理(图解)
Struts2框架的工作原理: 1.服务器启动,会加载我们的xml配置文件中的内容. 2.服务器启动之后,过来一个servlet请求,如user类中的save方法.请求过来先过过滤器(strutsPr ...
- 基于TCP的套接字
tcp服务端 1 ss = socket() #创建服务器套接字 2 ss.bind() #把地址绑定到套接字 3 ss.listen() #监听链接 4 inf_loop: #服务器无限循环 5 c ...
- ssh的无密码登录
实现步骤如下: 1 生成一对公钥和私钥 $ ssh-keygen #以上命令等价于 ssh-keygen -t rsa #-t:指定密钥的类型,默认为SSH-2 的rsa类型; 运行上面的命令后,系统 ...
- PAT 1048 数字加密(20)(代码+思路)
1048 数字加密(20)(20 分) 本题要求实现一种数字加密方法.首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取 ...
- spring mvc leaning
解读 web.xml文件 <servlet>-----配置前端控制器的servlet <servlet-name>springMVC</servlet-name> ...
- iis 应用程序预热
<applicationPools> <add name="appname" managedRuntimeVersion="v4.0" sta ...
- Json和XML解析
NSXMLParse 关于XML,有两种解析方式,分别是SAX(Simple API for XML,基于事件驱动的解析方式,逐行解析数据,采用协议回调机制)和DOM(Document Object ...