TFVC 到 TF GIT 迁移:回购组织,包括多个解决方案和构建



我们正在考虑从TFVC迁移到GIT(可能托管在TFS中(。

主要原因是对文件移动的支持不好,这使得较大的重构变得很痛苦。合并通常相当差,即使只更新了合并的一侧,也经常要求手动解决。另一个不好的事实是,我们目前有几个团队项目,并且希望(通过源代码(包含一些共享功能,当涉及多个团队项目时,这似乎很难做到。

考虑到 TFS 的 GIT 存储库的良好组织

  • 我们有多种解决方案(现在,分布在不同的团队项目中(
  • 我们计划在多个解决方案中引用一些共享代码,以便以源代码格式进行调试
  • 现在,我们有许多遗留功能分支,并希望为主要解决方案保留一个主要的开发分支(如果该工作流程在 GIT 中不错。在 TFVC 中,我注意到许多分支使源代码管理混乱。
  • 构建
  • 应该像以前一样通过构建代理工作,同时也考虑到共享项目(那里的更改会触发构建(
  • 历史应该保留

到目前为止,我们正在使用 https://github.com/git-tfs/git-tfs 进行迁移,这似乎相当不错。我们不太关心工作项或类似内容。

请分享您的见解。经过一些快速研究,我想知道这是否值得,因为这似乎是一些工作,其中包括决定回购结构以及重新设置构建项目。

主要区别在于 TVFS 的中心化方面与 Git 的去中心化性质,这意味着:

  • Git 存储库往往更小,专注于一个组件
  • 哪些TVFS可以在一个巨大的参考中托管多个项目

因此,请确保拆分由 git-tfs 导出生成的 Git 存储库,以便:

  • 每个解决方案都有一个 Git 存储库
  • 使用子模块将共享项目包含在主 Git 存储库中

根据您的构建环境,这可能包括挑战,但有解决方案。

最新更新