【问题标题】:Migrating source code from TFS to VSTS将源代码从 TFS 迁移到 VSTS
【发布时间】:2016-12-13 17:04:27
【问题描述】:

我正在尝试将源代码从 TFS 迁移到 VSTS。我尝试了 git-tf 命令进行迁移并且能够成功迁移,但我无法迁移历史记录。有人可以指导我做错了什么。请注意,我不是迁移到 GITVC,而是从本地 TFS 服务器迁移到 Visual Studio 中的 TFVC。

步骤是...

  1. git-tf 克隆http://onprimisetfsurl/$/project 项目
  2. git-tf clone http://Visualstudiotfvcurl/ $project project1
  3. git pull project1 进入项目
  4. git-tf checkin --deep

【问题讨论】:

  • 您的 TFS 上的版本控制是什么? Git 还是 TFVC?
  • 那么你想用git-tf把TFS TFVC仓库转换成本地Git仓库,然后push到VSTS TFVC仓库?
  • 是的,这就是计划。能够成功推送代码,但我失去了历史。

标签: tfs azure-devops


【解决方案1】:
【解决方案2】:

执行 git-tf clone 时添加“--deep”:

git-tf clone http://onprimisetfsurl/ $/project --deep

添加我的步骤供您参考:

  1. git-tf clone http://tfsurl $/tfsproject --deep
  2. 在 VSTS 中创建一个项目“vstsproject”。
  3. 从门户网站删除 vstsproject 中的“BuildProcessTemplates”文件夹。
  4. 在本地计算机上为 vstsproject 创建一个新文件夹。
  5. 运行“git init”将此文件夹设置为 git 存储库。
  6. 将 tfsproject 中的更改拉入新创建的 repo。
  7. 运行“git log”以确保历史记录正确。
  8. git-tf 配置https://vstsurl $/vstsproject --deep
  9. git-tf checkin --deep

【讨论】:

  • 不走运..我注意到的一件事是,当我拉动时,我得到以下错误致命:拒绝合并不相关的历史,所以我使用 --allow-unrelated-histories 但我猜历史应该没有任何问题
  • 我观察到的另一件事是在我的本地工作区上,当我执行 git log 时,它给了我完整的历史记录,但不在 VSTS 历史记录选项卡中。
  • @Pravin 您在哪个存储库中运行 git-tf checkin 命令?项目还是项目 1?此外,您需要将项目拉入 project1,因为 project1 是链接到 VSTS 存储库的存储库。
  • @Pravin VSTS 上的存储库是没有任何代码的新空存储库吗?
  • @Pravin 我只是按照您的步骤操作,可以得到与您相同的行为。但是,如果VSTS项目是一个没有任何代码的新项目,删除其中的“BuildProcessTemplates”文件夹,并使用“git-tf configure”而不是“git-tf clone”命令,历史将被签入并正确显示在 VSTS 门户网站中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多