1

在 Azure DevOps Server 2019(本地)中,我们有一个项目集合和一个大项目。但是性能真的很差。

我们想把这个大项目拆分成许多小项目:

  • 一个团队的项目集合
  • 一个项目一个产品

我有一个重复的环境要测试。在同一个组织中,我用 Git 创建了一个项目“Product1”的集合。在 Azure DevOps with the toolImport from TFVC中,我选择 TFVC,输入 Path$/BigProject/Team1/Product1/Main并取消选中 Migrate with history。我收到此错误:

There is no item in the given path which can be imported

VSTS 将我重定向到https://go.microsoft.com/fwlink/?linkid=839462但没有关于此错误的描述,它是一般导入指南。

我想我需要精确的路径中的集合。然后我尝试:

Collection/BigProject/Team1/Product1/Main
$Collection/BigProject/Team1/Product1/Main
/Collection/BigProject/Team1/Product1/Main

但我有同样的错误。

我知道我们可以像Unable to perform TFVC to GIT import on VSTS一样手动迁移,我将为我的团队执行此操作。但是对于其他团队来说,最好有一个简单的工具。

如何使用该工具导入其他集合中的 TFVC 项目 Git 项目Import from TFVC

4

2 回答 2

2

虽然您确实只能从同一个集合中导入,但将整个 git 存储库从一个集合迁移到另一个集合非常容易。

所以这里的诀窍是:

  • 使用 Import 功能将数据从 TFVC 导入到源项目中的 git repo。

    在此处输入图像描述

  • 从源项目中获取克隆 URL 在此处输入图像描述

    在此处输入图像描述

  • 转到目标项目并选择将 git 存储库导入该项目并将其指向源项目中的存储库。我使用个人访问令牌进行身份验证,但您可能需要生成和使用另一种替代凭据。

    在此处输入图像描述

这将工作得很好。git repo 将被克隆,其中包含所有详细信息和历史记录。Git 的可移植性使其成为一个无缝的过程。它可以从一个 TFS 服务器工作到另一个,也可以从任何其他 Git 提供程序或 Azure DevOps 服务工作。

注意

虽然将您的集合拆分为多个集合将使您的 TFS 实例更易于管理,但如果您希望稍后迁移到云中的 Azure DevOps,则会产生一些限制。每个集合在导入时都会变成一个单独的帐户。因此,如果您将来想要一个帐户,建议保留在单个项目集合中。Azure DevOps 服务没有集合的概念。

一个团队项目可以包含多个 Git 存储库,因此可以轻松地将多个代码存储库放在一个项目下,然后将多个项目放在一个集合中。

于 2020-01-10T08:18:40.393 回答
1

您只能将代码从现有 TFVC 存储库迁移到同一组织/集合中的新 Git 存储库。

如果要使用 TFVC 导入工具,可以考虑将单个项目集合拆分为多个项目集合。例如,您可以拆分仅包含 的集合BigProject,然后迁移到同一集合中的 Git。

https://docs.microsoft.com/en-us/azure/devops/server/admin/split-team-project-collection?view=azure-devops

于 2020-01-10T05:28:19.667 回答