【问题标题】:git-tfs: How is the repository storing files?git-tfs:存储库如何存储文件?
【发布时间】:2019-12-06 00:12:52
【问题描述】:

我们有一个大型 TFS 存储库,我们希望将其迁移到 git。

我们正在考虑使用 git-tfs 一段时间,以便在我们迁移时一切都能继续工作。

我们在整个代码中散布着大(或小,但变化迅速)的二进制文件,这些文件在整个历史过程中都已签入到 tfs。


我对 git-tfs 的担忧我一直无法找到可访问的答案:

  1. git-tfs 的真实来源是什么?它是一个 git 服务器、一个 tfs 服务器,还是一些混合服务器,或者以上都不是?

  2. 如果是 git 服务器,在知道二进制文件存在的情况下,这会如何影响工作流程?

  3. 我们考虑过使用lfs,但不确定这将如何与 git-tfs 一起使用。

我希望能对这个主题有所了解,因为仅仅为了发现二进制文件导致新的 repo 不可用而进行迁移是毫无意义的。

【问题讨论】:

    标签: git tfs migration git-tfs


    【解决方案1】:
    1. Git-TFS 工具是Team Foundation 版本控制和 Git 之间的双向桥梁,可用于执行迁移

    2. 这不是 git 服务器

    3. 有两个完全不同的东西,没有任何关系。

    这个工具类似于 git-svn。它将 TFS 提交提取到 git 存储库中,并允许您将更新推送回 TFS。换句话说,您在本地使用 git 存储库对代码进行源代码控制,并且在编辑后您可以将更改推送回远程 TFVC 存储库。它对服务器有用,就像您正常使用本地 TFVC 工作区一样。

    如果您想尝试迁移具有完整历史记录、超过导入工具支持的 180 天,或者如果您想尝试包含多个分支和合并关系的迁移,Git-TFS 也适用。

    更多详情请看此链接:https://github.com/git-tfs/git-tfs


    由于 TFVC 和 Git 存储版本控制的方式不同 历史,我们建议您不要迁移历史。这是 Microsoft 在迁移 Windows 和其他软件时采用的方法 从集中式版本控制到 Git 的产品。

    我们通常建议用户进行小费迁移并保留他们的 TFVC 存储库在线,但只读以查看历史记录。

    你也可以看看我们的官方教程——Import repositories from TFVC to Git

    【讨论】:

      【解决方案2】:

      我们最终使用了git tf,这是一个不再受支持的产品。

      好处是,它奏效了。

      与导致各种问题的 git-tfs 不同:二进制文件被迁移损坏,并非所有历史记录都被迁移,以及其他我们不想解决的烦人问题。

      我们还没有尝试过lfs,但以后可能需要。至少我们现在必须经历一个渐进的步骤。

      TL;DR: - git-tfs 对我们不起作用。 git-tf 做到了。

      【讨论】:

      • 感谢您的分享和友好的反馈。它是一个贬值的工具。但很高兴听到它奏效了。您可以将自己的解决方案标记为已回答。
      猜你喜欢
      • 2013-02-23
      • 1970-01-01
      • 2016-08-15
      • 2018-02-07
      • 2018-06-20
      • 1970-01-01
      • 2015-07-14
      • 2014-11-26
      • 1970-01-01
      相关资源
      最近更新 更多